【问题标题】:Looping through an empty array to fill out values on a table循环遍历一个空数组以填写表格中的值
【发布时间】:2014-12-09 09:34:26
【问题描述】:

我有一个带有初始化空数组的 for 循环。在一张表上,我应该列出每次迭代的 i 值、j 值和 myList[i][j] 值。对不起!我是 Javascript 的新手,不了解如何将值添加到数组中以及它们是什么。

var myList=[ ];

for (var i=0; i<3; i++){

    myList[i]=[ ];

    for (var j=0; j<i; j++){

    myList[i][j]=10-(2*j);

    }

}

所以对于第一次迭代:i=0, j=0, myList[i][j] 未定义。但是这之后如何继续呢?

【问题讨论】:

    标签: javascript arrays for-loop nested-loops


    【解决方案1】:

    var myList=[ ];

    for (var i=0; i

    myList[i]=[ ];
    
    for (var j=0; j<i; j++){
    
    myList[i][j].push();
    
    }
    

    }

    【讨论】:

    • myList[i][j] 不是数组,这将返回错误。
    【解决方案2】:

    当您的代码第一次命中第二个 for 时,i 为零,因此第二个循环的条件为 false,它永远不会命中 for 的内部。但是在第一次之后它的 j 总是小于 i 因此它创建了其他元素。如果你想列出一个元素,你可以试试下面的方法。

    for (var j=0; j<=i; j++){
    
        myList[i][j]=10-(2*j);
    
    }
    

    【讨论】:

      【解决方案3】:

      您不允许代码在第二个 for 循环中为 i=0;j=0 执行,这是在 myList[i][j]; 中 i=0;j=0 索引处未定义的原因;

      你允许你的代码运行

      [i] [j]
       1   0
       2   0
       2   1 
      

      仅索引,并且仅在上述索引位置分配值。因此你在 我的列表[0][0]

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-01-06
        • 1970-01-01
        • 1970-01-01
        • 2013-11-06
        • 1970-01-01
        • 1970-01-01
        • 2019-07-10
        相关资源
        最近更新 更多