使用逗号进行JavaScript数组访问

时间:2014-12-23 23:05:44

标签: javascript syntax syntax-error

为什么以下内容不会抛出任何语法错误?

var a = [1, 2, 3, 4],
    b = a[2, 1, 0, 1];

console.log(b);

见小提琴:

http://jsfiddle.net/2eng5typ/

1 个答案:

答案 0 :(得分:4)

1。 在上面的例子中,是逗号运算符。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comma_Operator

  

逗号运算符计算每个操作数(从左到右)并返回最后一个操作数的值。

2。 第一个[]定义了一个数组。

3。 a [...]从数组中取消引用...元素,其中......是最后一个元素,即1

4。 所以基本上会发生这种情况:

var a = [1, 2, 3, 4];
var b = a[1];
console.log(b); 

与:

相同
var b = 2;
console.log(b);