Asignación de coma `x = y, z` en JavaScript [duplicado]

Posible duplicado:
Sintaxis de Javascript: ¿qué significa coma?

Me encontré con el código mientras leíaEste artículo (hacer unCtrl+F buscarAndre Breton):

//function returning array of `umbrella` fibonacci numbers
function Colette(umbrella) {
  var staircase = 0, galleons = 0, brigantines = 1, armada = [galleons, brigantines], bassoon;
  Array.prototype.embrace = [].push;

  while(2 + staircase++ < umbrella) {
    bassoon = galleons + brigantines;
    armada.embrace(brigantines = (galleons = brigantines, bassoon));
  }

  return armada;
}

Lo que hace elx = (y = x, z) construir medio? O más específicamente, ¿qué hace ely = x, z ¿media? Lo llamo asignación de coma porque se parece a la asignación y tiene una coma.

En pitón, significó el desempaquetado de la tupla (o el empaque en este caso). ¿Es el mismo caso aquí?

Respuestas a la pregunta(3)

Su respuesta a la pregunta