当前位置: 首页 > 知识库问答 >
问题:

我如何用for...of循环跟踪数组索引?[副本]

陶和歌
2023-03-14

这是对象:

const game = {
  team1: 'Bayern Munich',
  team2: 'Borrussia Dortmund',
  players: [
    [
      'Neuer',
      'Pavard',
    ],
    [
      'Burki',
      'Schulz',
    ],
  ],
  score: '4:0',
  scored: ['Lewandowski', 'Gnarby', 'Lewandowski', 'Hummels'],
  date: 'Nov 9th, 2037',
  odds: {
    team1: 1.33,
    x: 3.25,
    team2: 6.5,
  },
};

我希望使用for..of并在循环时跟踪数组索引。

for (const [i, player] of game.scored.entries())
  console.log(`Goal ${i + 1}: ${player}`);
let i = 0
for(const game1 of game.scored) {
  i++;
  console.log(i,game1)
}

但是有可能在for语句中声明任何变量并跟踪它吗?

谢谢你。

共有1个答案

颜文昌
2023-03-14

你不能。但你有以下四种选择:

const arr = ['apple', 'banana', 'carrot']

for (const i in arr) { console.log(i, arr[i]) }
for (let i = 0; i < arr.length; i++) { console.log(i, arr[i]) }
for (const [i, elt] of arr.entries()) { console.log(i, elt) }
arr.forEach((elt, i) => console.log(i, elt))
 类似资料:
  • for循环用于迭代迭代而不是对象文字。 以下是'for ... of'循环的语法。 for (variablename of object) { statement or block to execute } 例子 (Example) for (let val of[12 , 13 , 123]) { console.log(val) } 成功执行上述代码后,将显

  • Iterator(遍历器)的概念 JavaScript原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6又添加了Map和Set。这样就有了四种数据集合,用户还可以组合使用它们,定义自己的数据结构,比如数组的成员是Map,Map的成员是对象。这样就需要一种统一的接口机制,来处理所有不同的数据结构。 遍历器(Iterator)就是这样一种机制。它是一种接口,为各种不同

  • 问题内容: 我正在尝试排序(减少)整数数组,但要跟踪原始索引。 我的意思是,例如,如果我有这个数组: 使用Arrays.sort(b,Collections.reverseOrder())之后变成(我使用Arrays.sort,因为在此示例中b的长度仅为5,但是在我的问题中b的长度可能是1 <b.length <70 但我想以某种方式拥有原始索引,我的意思是知道 我不知道我的问题是否明确,请向我询

  • 问题内容: 我可以在Java的for循环中更改索引吗?例如: 尽管它在for循环中执行j ++,但在for循环中,我也在执行j = j +3。对我来说有可能实现这一点吗? 问题答案: 是的,您可以在for循环内更改索引,但是这太令人困惑了。在这种情况下,最好使用while循环。

  • 问题内容: 我要寻找一个量化的方式来索引的索引。 例如: 我想建立一个新的数组,以便该数组中的每一行(i)都是array的row(i),并由数组inds(i)的行索引。我想要的输出是: 我可以通过循环来实现: 但我正在寻找一种纯矢量化的解决方案。 问题答案: 使用索引数组对另一个数组进行索引时,每个索引数组的形状应与 输出 数组的形状匹配。您希望列索引匹配,并且您希望行索引匹配输出的行,例如: 由