Javascript多数组操作
我已经了解了javascript数组的这种奇怪用法 谁能给我解释一下吗 [1,2,3][1,2] 这是什么类型的操作?在表达式中Javascript多数组操作,javascript,arrays,Javascript,Arrays,我已经了解了javascript数组的这种奇怪用法 谁能给我解释一下吗 [1,2,3][1,2] 这是什么类型的操作?在表达式中 var result = [1, 2, 3][1, 2] 第一部分[1,2,3]是数组文字,第二部分[1,2]是数组的索引。所以它相当于: var array = [1, 2, 3]; var index = (1, 2); var result = array[index]; var result = array[2]; (1,2)是一个逗号表达式。它从左到右
var result = [1, 2, 3][1, 2]
第一部分[1,2,3]
是数组文字,第二部分[1,2]
是数组的索引。所以它相当于:
var array = [1, 2, 3];
var index = (1, 2);
var result = array[index];
var result = array[2];
(1,2)
是一个逗号表达式。它从左到右计算其参数,并返回最后一个参数的值,因此它只相当于2
。因此,整个事件相当于:
var array = [1, 2, 3];
var index = (1, 2);
var result = array[index];
var result = array[2];
将
result
设置为3
您的确切问题是什么?您是如何处理它的?只是澄清一下,逗号表达式将返回最右边的元素,即(1,2,3)
将返回3
。这实际上是两个逗号表达式,相当于((1,2,3)
,正如1+2+3
是两个加法表达式。嗨,巴尔马,我理解你对索引的解释。但是我没有得到((1,2),3)。请给我解释一下逗号的用法opeartor@Kpatel1989这些是二进制运算符,它们有两个参数。如果连续多次使用它们,则必须对它们进行分组。正如1+2+3
被处理为((1+2)+3)
,1,2,3
被处理为((1,2,3)
)。(1,2)
的值是2
,而(2,3)
的值是3
,因此(1,2,3)
的值是3
。OK。知道了。谢谢