Eu não consigo entender essa peculiaridade.
[1,2,3,4,5,6][1,2,3]; // 4
[1,2,3,4,5,6][1,2]; // 3
Eu sei [1,2,3] + [1,2] = "1,2,31,2"
, mas não consigo encontrar que tipo ou operação está sendo executada.
javascript
Joe
fonte
fonte
Porque
(1,2) == 2
. Você encontrou o operador de vírgula (ou uma explicação mais simples aqui ).A menos que vírgulas apareçam em uma lista de declarações, lista de parâmetros, objeto ou literal de matriz, elas agem como qualquer outro operador binário.
x, y
avaliax
, avaliay
e produz isso como resultado.fonte
Aqui a segunda caixa, ou seja,
[1,2,3]
torna-se[3]
o último item, portanto o resultado será 4, por exemplo, se você mantiver[1,2,3,4,5,6]
uma matrizsimilarmente
Mas quando você coloca um operador + no meio, o segundo colchete não é para mencionar o índice. É uma outra matriz É por isso que você obtém
ie
Basicamente, no primeiro caso, é usado como índice de matriz e, no segundo caso, é ele próprio uma matriz.
fonte