No puedo pensar en este capricho.
[1,2,3,4,5,6][1,2,3]; // 4
[1,2,3,4,5,6][1,2]; // 3
Lo sé [1,2,3] + [1,2] = "1,2,31,2"
, pero no puedo encontrar qué tipo u operación se está realizando.
javascript
Joe
fuente
fuente
Debido
(1,2) == 2
. Te has topado con el operador de coma (o una explicación más simple aquí ).A menos que las comas aparezcan en una lista de declaración, lista de parámetros, objeto o matriz literal, actúan como cualquier otro operador binario.
x, y
evalúax
, luego evalúay
y produce eso como resultado.fuente
Aquí el segundo cuadro, es decir, se
[1,2,3]
convierte en[3]
el último elemento, por lo que el resultado será 4, por ejemplo, si mantiene[1,2,3,4,5,6]
una matrizsimilar
Pero cuando coloca un operador + en el medio, el segundo corchete no es para mencionar el índice. Es más bien otra matriz. Es por eso que obtienes
es decir
Básicamente, en el primer caso se usa como índice de matriz y en el segundo caso es en sí misma una matriz.
fuente