我有一个清单: 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
Run Code Online (Sandbox Code Playgroud)
我认为它会抛出一个错误,返回undefined,或使用它遇到的第一个数字,但相反,似乎使用了数字的最后一个元素.为什么?有什么参考我可以咨询吗?
对于那些可能想知道我为什么这样做的人a[0,0]:我将用python + numpy编写的脚本重写为javascript.该脚本处理2D数组和a[m,n]要访问的numpy箭头a[m][n].
嗯,这就是逗号运算符的工作方式; 用作表达式,它产生列表的最后一个值,即:
0,0 => 0
'foo','bar' => 'bar'
Run Code Online (Sandbox Code Playgroud)
要访问数组的第二个维度,您需要使用括号表示法:
a[0][1] // get first element, then second element inside that
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19 次 |
| 最近记录: |