📅  最后修改于: 2023-12-03 15:12:19.678000             🧑  作者: Mango
在JavaScript中,forEach是一个用于循环遍历数组的函数。我们有时候可能会在forEach中使用return来提前退出循环或者返回值,但是在forEach中使用return却不起作用。这是因为forEach函数始终返回undefined,无法中断循环或返回函数值。
以下是一个简单的例子,我们会发现在使用return尝试中断循环时,不会起作用:
const numbers = [1, 2, 3, 4, 5];
numbers.forEach(num => {
console.log(num);
if (num === 3) {
return;
}
});
// 输出结果为:
1
2
3
4
5
上述代码中,我们使用forEach循环遍历了数组numbers,然后在num等于3时,使用return来尝试中断循环。但是,最终的输出结果仍然包括了4和5。
如果我们尝试在forEach的外部使用一个变量来存储函数的返回值,我们会发现它的值始终为undefined。这是因为forEach返回的值是undefined,无法被赋值给变量。
有时候,我们需要中断循环或返回一个值,我们可以使用其他方法,例如:
总而言之,在使用forEach循环遍历数组时,在循环中使用return无法中断循环或返回值。我们可以尝试使用其他方法来达到我们的目的。
参考链接: