Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript多数组操作_Javascript_Arrays - Fatal编程技术网

Javascript多数组操作

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)是一个逗号表达式。它从左到右

我已经了解了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)
是一个逗号表达式。它从左到右计算其参数,并返回最后一个参数的值,因此它只相当于
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。知道了。谢谢