const a = (1, 2, 3, 4); console.log(a); const b = 1, 2, 3, 4; console.log(b); En el ejemplo anterior, a se le asignará el valor 4 , mientras que la segunda línea generará un error. ¿Por qué "tiene éxito" la primera tarea? ¿Por qué es una sintaxis JS válida?
El operador de coma devuelve la última expresión de la lista. Funciona en el primer caso porque está entre paréntesis y se analiza como una sola expresión. Sin embargo, una vez que una expresión válida finaliza después de = - en el segundo caso, 1 - y el siguiente token es una coma, JavaScript espera que se declare otro identificador, por lo que puede declarar múltiples variables como esta:
let a = 1, b = 2;