是否可以从该函数的回调内部退出(本机(函数?
例如,我只想执行记录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;
});