Javascript 数组返回所有的最后一个条目

标签 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]);
}

最佳答案

这个声明:

var arr = [,];

创建多维数组。它创建一个稀疏数组,其中有一个空槽。还有这个声明:

arr[1,0]=444;

分配给二维数组索引。相反,表达式 1,0 的计算结果只是 0(这就是有点晦涩的逗号运算符的工作原理)。所以 arr[1,0]arr[0] 完全相同。

Javascript 本身不支持多维数组。相反,您应该有一个数组,其元素本身就是数组:

var arr = [];
arr[1] = [];
arr[1][0] = 444;

有关多维数组的更多信息,请参阅 this question .

关于Javascript 数组返回所有的最后一个条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31226886/

相关文章:

javascript - AngularJs 中对象内的引用数据

javascript - 基于逗号分隔的数组打开新选项卡

arrays - 求多个数组的平均值

java - 我可以使用单个数组来填充创建多维数组吗?

javascript - 解析 Node Express 路由中带有特殊字符的 URL

javascript - Mongoose 模型不包括返回时的附加值

java - 如何摆脱 GWT 应用程序内部框架上的双滚动条

php - 如何在另外两个数组中拆分数组

c++ - 数组 vector 是否连续?

c# - 快速加载/保存多维数组