来自一道面试题的小记
如图:

输出结果为 4
知识点 :forEach 循环不能被 return 终止,其作用和 for循环中的continue 相似 只是跳出当前循环,继续执行下一次循环,
在 forEach 中也不能使用 break,continue 来跳出循环 同样会有报错
let list = ['1', '2', 'hell', 'js'];
let i = 0,
j = 0;
list.forEach((item) => {
i++;
console.log(i)
if (item == 2) {
console.log('=')
return
}
});
console.log(i) // 4
for (let a = 0; a < 5; a++) {
j++;
console.log('---', j)
if (list[a] == 2) {
return
}
}
console.log(j) // 不会执行
放入浏览器执行 for 循环中的 return 会报错,如图:

本文通过一道面试题探讨了在JavaScript中,`return`无法跳出`forEach`循环的事实,将其效果比作`for`循环中的`continue`,即只能结束当前迭代,无法中断整个循环。同时指出在`forEach`中使用`break`或`continue`也会导致错误。
1996

被折叠的 条评论
为什么被折叠?



