如何更改包含多个值的JavaScript数组中的值

如何更改包含多个值的JavaScript数组中的值,javascript,arrays,Javascript,Arrays,我有一个JavaScript数组,可以使用此代码构建 var Test = []; Test.push([3, 2]); Test.push([5, 7]); Test.push([8, 1]); Test.push([4, 10]); 我需要做的是将每个项目中的第一个值从0更改为有序,结果如下所示: [0, 2] [1, 7] [2, 1] [3, 10] 我也会接受jQuery的答案。for(var I=0,l=Test.length;Ifor(var I=0;I

我有一个JavaScript数组,可以使用此代码构建

var Test = [];
Test.push([3, 2]);
Test.push([5, 7]);
Test.push([8, 1]);
Test.push([4, 10]);
我需要做的是将每个项目中的第一个值从0更改为有序,结果如下所示:

[0, 2]
[1, 7]
[2, 1]
[3, 10]
我也会接受jQuery的答案。

for(var I=0,l=Test.length;I
for(var I=0;Ifor (var i=0, l=Test.length; i<l; i++){
    Test[i][0] = i;
}
测试[i][0]=i; }
如果您想要jquery ic答案:

  $(Test).each(function(i) {
        this[0] = i;
    });
我喜欢这种方法的一点是,each方法为每个循环迭代创建一个单独的函数范围。虽然在本例中没有必要这样做,但它可以帮助减少意外变量绑定带来的麻烦

不正确-尽管有效

 $(Test).each(function(i) {
        this[0] = i++;
    });

嗯,
i
不应该初始化为
0
吗?实际上,不是。我不小心把++留在了i上。每个回调的第一个参数是索引(对于数组,或者对于对象,是键).谢谢你抓到这个。很好,我不知道每个
都是这样工作的。谢谢你的解释
 $(Test).each(function(i) {
        this[0] = i++;
    });