是否可以从该函数的回调内部退出(本机)函数



是否可以从该函数的回调内部退出(本机(函数?

例如,我只想执行记录1的第一个回调。

a = [1, 2, 3];
a.forEach(function (element) {
console.log(element);
return; 
});

取决于函数。在forEach的具体情况下,答案是否定的。这在文件中有解释:

除了通过抛出异常。如果您需要这样的行为,则使用forEach((方法是错误的工具。

提前终止可通过以下方式完成:

  • 一个简单的for循环
  • A代表。。。第个,共个。。。在循环中
  • Array.prototype.eevery((
  • Array.prototype.some((
  • Array.prototype.find((
  • Array.prototype.findIndex((

数组方法:every((、some((、find((和findIndex((测试数组带有谓词的元素返回truthy值以确定需要进一步的迭代。

如果需要使用forEach(),可以根据目标数字(在本例中为x(检查element,如果满足条件,则退出循环而不是执行。

a = [1, 2, 3];
x = 1; // target number
a.forEach(function(element) {
if (element > x) { // check if element is greater than the target number
return; // if so, exit the function
}
console.log(element);
return;
});

最新更新