代码之家  ›  专栏  ›  技术社区  ›  Russ Bradberry

如何更改多个值的javascript数组中的值

  •  3
  • Russ Bradberry  · 技术社区  · 15 年前

    我有一个可以用这段代码构建的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答案。

    3 回复  |  直到 15 年前
        1
  •  4
  •   Roland Bouman    15 年前
    for (var i=0, l=Test.length; i<l; i++){
        Test[i][0] = i;
    }
    
        2
  •  2
  •   jpsimons    15 年前
    for (var i=0; i < Test.length; i++) {
        Test[i][0] = i;
    }
    
        3
  •  2
  •   sberry    15 年前

    如果需要jquery IC答案:

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

    我喜欢这种方法的一点是,每个方法为每个循环迭代创建一个单独的函数范围。尽管在本例中不需要这样做,但它可以帮助减少意外变量绑定引起的头痛。

    错误的 -虽然有效

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