转到 JavaScript forEach 循环中的“下一个”迭代

2022-08-30 00:01:54

如何进入 JavaScript 循环的下一个迭代?Array.forEach()

例如:

var myArr = [1, 2, 3, 4];

myArr.forEach(function(elem){
  if (elem === 3) {
    // Go to "next" iteration. Or "continue" to next iteration...
  }

  console.log(elem);
});

MDN文档只提到完全打破循环,而不是移动到下一个迭代。


答案 1

您可以简单地跳过当前迭代。return

由于您在函数中,如果您在执行任何其他操作之前,那么您实际上跳过了语句下方代码的执行。returnreturn


答案 2

JavaScript的forEach的工作方式与其他语言在每个循环中可能使用的方式略有不同。如果在MDN上读取,它表示为数组中的每个元素执行一个函数,按升序排列。若要继续执行下一个元素(即运行下一个函数),只需返回当前函数,而无需让它进行任何计算。

添加一个返回,它将进入循环的下一次运行:

var myArr = [1,2,3,4];

myArr.forEach(function(elem){
  if (elem === 3) {
    return;
  }

  console.log(elem);
});

输出: 1, 2, 4