javascript - 同一语句中的多个 for-of 循​​环(Javascript)

标签 javascript arrays loops for-loop

来自 mozillas js 文档:

for (variable of iterable) {
    statement
 }

这是 js 中 of 语句的标准,我想做这样的事情:

for (variable of iterable && variable of iterable) {
   statement
}

我只需要循环不迭代,然后为每个嵌套的 for of 循环再次迭代。因此,类似的东西非常适合我的需求,但上面的似乎更可取。

我有 2 个数组,我正在尝试迭代它们,并希望创建对象并进一步检查它们的相等性(或其他内容)。

示例场景:

for (variable1 of iterable1 && variable2 of iterable2) {
   //code
  if (variable1 === variable2){
   //do something
  }
}

我的代码:

 if (_.intersection(selections[i],questions[i].correctAnswer)) {
       for (const selection of selections[i]) for (const answer of questions[i].correctAnswer) for(const item of questions[i].qPoints) {
          if (selection === answer){

        numCorrect += item;

        console.log(numCorrect)
              }
            }
          }
        }

基本上,我对交集所做的事情是使用 underscoreJS 检查两个数组是否相交。之后,我尝试为每个数组创建对象。首先,检查数组在任何点是否相等,如果是,则将 numCorrect 增加该索引处正确答案的值(qPoints)。问题在于嵌套的 for 循环,我得到了 qPoints 的多个值(由于迭代次数过多)。

最佳答案

您不必使用“for” - 您可以直接访问底层迭代器。

i1 = iterable1.iterator; i2 = iterable2.iterator;
while (!i1.done && !i2.done) {
    variable1 = i1.next; variable2 = i2.next;

    ... do something with the pair
}

关于javascript - 同一语句中的多个 for-of 循​​环(Javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47213415/

相关文章:

javascript - 使用工厂 AngularJS 提供处理后的数据

php - "Notice: Undefined variable"、 "Notice: Undefined index"、 "Warning: Undefined array key"和 "Notice: Undefined offset"使用 PHP

php - 如何检查数组是否具有与另一个数组相同的某些元素并将这些元素从数组中弹出

python - 使用 python 和 Beautiful Soup 迭代网站页面

javascript - 来自对象键和嵌套数组的 Vue.js v-for 循环

javascript - React/Redux 异步操作

javascript - 从 DOM 控制 React 组件 props

C++ 将文本文件读入数组

jquery - 等待 jQueryanimation 在 for 循环内完成

javascript - TypeError : Text. isText 不是函数