我有一个列表:var a = [0,1,2,3];
然后我错误地使用了一对数字来访问元素,像这样:
console.log(a[0,0]) // => 0
console.log(a[0,1]) // => 1
console.log(a[1,0]) // => 0
console.log(a[4,2,5,1,2]) // => 2
我以为它会抛出一个错误,返回未定义的,或者使用它遇到的第一个数字,但相反,它似乎使用了数字的最后一个元素。为什么?有什么引用可以引用吗?
对于那些可能想知道我为什么做 a[0,0]
的人:我正在将用 python+numpy 编写的脚本重写为 javascript。该脚本处理二维数组和 numpy 箭头 a[m,n]
以访问 a[m][n]
。
最佳答案
嗯,这就是 comma operator 的方式作品;用作表达式,它产生列表的最后一个值,即:
0,0 => 0
'foo','bar' => 'bar'
要访问数组的第二个维度,需要使用括号表示法:
a[0][1] // get first element, then second element inside that
关于javascript - 使用多个数字访问javascript : whoy does this work this way?中的数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24464975/