1 javascript multidimensional-array
我试图在JavaScript中设置一个多维数组,但它返回所有数据的最后一个条目.我期待警报返回444,但它返回555.
有任何想法吗?
function test() {
var arr = [,];
arr[1]="qtest0";
arr[1,0]=444;
arr[2,0]=555;
arr[2]="qtest1";
alert(arr[1]);
alert(arr[1,0]);
}
Run Code Online (Sandbox Code Playgroud)
这个说法:
var arr = [,];
Run Code Online (Sandbox Code Playgroud)
难道不是创建一个多维数组.它创建一个稀疏数组,其中包含一个空槽.而这句话:
arr[1,0]=444;
Run Code Online (Sandbox Code Playgroud)
并没有分配给一个二维阵列的索引.相反,表达式1,0简单地计算为0(这是有点模糊的逗号运算符的工作方式).所以arr[1,0]完全一样arr[0].
Javascript本身不支持多维数组.相反,你应该有一个数组,其元素本身就是数组:
var arr = [];
arr[1] = [];
arr[1][0] = 444;
Run Code Online (Sandbox Code Playgroud)
有关多维数组的更多信息,请参阅此问题.
| 归档时间: |
|
| 查看次数: |
45 次 |
| 最近记录: |