首页 > 解决方案 > 嵌套数组中的 JavaScript 循环(新手)

问题描述

我是一名初学者,在观看 Colt Steele 在 Udemy 上的 Web Dev Bootcamp 视频后,我决定进一步探索 JavaScript。想了解更多关于通过嵌套数组更好地查询的信息。我今天早上写了下面的语法,想看看我是否可以使用我制作的循环将与每个玩家有关的“数字”保存在循环之后的变量中?让我知道您的专业人士的想法!我也愿意学习您建议我采取的任何方法或课程,以进一步提高我的编码技能!

下面的函数仅从 Players 变量中声明的数组中打印出每个单独的参数。我想使用该结果仅在循环后将数字定位为“var”。抱歉,如果这没有任何意义,但我觉得必须有办法做到这一点哈哈

var players = [[["Lebron James","23"],["Kevin Durant","35"]],
           [["Dwayne Wade","3"],["Russell Westbrook","0"]]];

function loop(){
  for(var i=0; i<players.length;i++){
    for (var k=0; k<players[i].length; k++){
    for (var m=0; m<players[i][k].length; m++){
          console.log(players[i][k][m])
      }
    }
  }
}

标签: javascriptarraysmultidimensional-array

解决方案


您只想从该数组中获取数字?然后你几乎明白了。

声明一个空数组const numbers = [],然后在你的内部循环中添加一个数字。元素players[i][k]是玩家的数组[name, number]players[i][k][1]你想要的号码也是如此。将其推入您的数字数组

function loop(){
  for(var i=0; i<players.length;i++){
    for (var k=0; k<players[i].length; k++){
       numbers.push(players[i][k][1])
    }
  }
}

for(...)您可以forEach在数组上使用循环而不是循环

players.forEach(group => {
   group.forEach(player => {
      numbers.push(player[1])
   })
})

希望有帮助!


推荐阅读