JavaScript Comma Operator

The JavaScript comma operator is a lesser-known but useful operator that allows you to evaluate multiple expressions within a single statement. It is used to separate two or more expressions that are included where only one expression is expected, and evaluates each of its operands (from left to right), returning the value of the last operand.


expr1, expr2, ... , exprN


Declaring or initialising multiple variables in a single statement:

let a = 1, b = 2, c = 3;

Variable assignment within a for loop:

for (let i = 0, j = 10; i <= 10; i++, j--) {
  console.log(`i: ${i}, j: ${j}`);

Multiple expressions within a single statement:

let a, b;

(a = 5, b = a * 2);

console.log(a);  // prints: 5
console.log(b);  // prints: 10

Potential Pitfalls

While the comma operator can be useful in some cases, there are a few things to keep in mind:

a. Readability: Overusing the comma operator can make your code harder to read and maintain. Be cautious about using it in complex expressions or when there are more readable alternatives available.

b. Operator precedence: The comma operator has the lowest precedence among JavaScript operators. Be aware of this when using it with other operators, as you might need to use parentheses to enforce the desired order of evaluation.

c. Side effects: Ensure that the expressions used with the comma operator don't have unintended side effects. Be particularly careful when using functions or methods with side effects.