为什么[5,6,8,7][1,2]=8在JavaScript中?

为什么[5,6,8,7][1,2]=8在JavaScript中?

我不能把我的注意力集中在这个怪癖上。


[1,2,3,4,5,6][1,2,3]; // 4

[1,2,3,4,5,6][1,2]; // 3

我知道呀[1,2,3] + [1,2] = "1,2,31,2",但我找不到正在执行的类型或操作。


收到一只叮咚
浏览 410回答 3
3回答

守候你守候我

[1,2,3,4,5,6][1,2,3];       ^         ^       |         |     array       + — array subscript access operation,                     where index is `1,2,3`,                     which is an expression that evaluates to `3`.第二[...]不能是数组,所以它是数组下标操作。下标操作的内容不是被分隔的操作数列表,而是一个表达式。

慕仙森

[1,2,3,4,5,6][1,2,3];在这里,第二个方框,即[1,2,3]成[3]也就是说,最后一项,所以结果将是4,例如,如果你保持[1,2,3,4,5,6]在数组中var arr=[1,2,3,4,5,6];arr[3]; // as [1,2,3] in the place of index is equal to [3]类似*var arr2=[1,2,3,4,5,6];  // arr[1,2] or arr[2] will give 3*但是,当您在中间放置一个+运算符时,第二个方括号不是用来表示索引的。这是另一个数组,这就是为什么[1,2,3] + [1,2] = 1,2,31,2E.var arr_1=[1,2,3];var arr_2=[1,2];arr_1 + arr_2; // i.e.  1,2,31,2基本上,在第一种情况下,它被用作数组的索引,而在第二种情况下,它本身就是一个数组。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript