El operador coma evalua cada uno de sus operandos (de izquierda a derecha) y retorna el valor del último operando.

Sintaxis

expr1, expr2, expr3...

Parámetros

expr1, expr2, expr3...
Cualquier expresión.

Descripción

Puede usar el operador coma cuando deseé mútiples expresiones en una localización que requiere una sola expresión. El uso más común de este operador es proveer múltiples parámetros en un búcle for

Ejemplo

Si a es un array de dos dimensiones con 10 elementos en un lado, el siguiente código usa el operador coma para incrementar dos variables a la vez. Note que la coma en la sentencia var no es el operador coma, porque no existe adentro de una expresión.Más bien, es un carácter especial en sentencias var para combinar a múltiples de ellas en una sola. Sin embargo, esa coma se comporta casi igual que el operador coma. El código imprime los valores de los elementos diagonales en el array:

for (var i = 0, j = 9; i <= 9; i++, j--)
  document.writeln("a[" + i + "][" + j + "] = " + a[i][j]);

Procesar y luego retornar:

Otro ejemplo de lo que se puede hacer con el operador coma es procesar antes de retornar. Como se mencionó, solo el último elemento será retornado pero todos los otros también van a ser evaluados. Así, se puede hacer:

function myFunc () {
  var x = 0;

  return (x += 1, x); // the same as return ++x;
}

Específicaciones

Especificación Estado Comentario
ECMAScript Latest Draft (ECMA-262)
La definición de 'Comma operator' en esta especificación.
Draft  
ECMAScript 2015 (6th Edition, ECMA-262)
La definición de 'Comma operator' en esta especificación.
Standard  
ECMAScript 5.1 (ECMA-262)
La definición de 'Comma operator' en esta especificación.
Standard  
ECMAScript 1st Edition (ECMA-262)
La definición de 'Comma operator' en esta especificación.
Standard Definición inicial

Compatibilidad en navegadores

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) 3.0 (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Ver también

Etiquetas y colaboradores del documento

Etiquetas: 
 Colaboradores en esta página: aeroxmotion, eduardogm
 Última actualización por: aeroxmotion,