如何更改包含多个值的JavaScript数组中的值
我有一个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
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;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++;
});