文章预览
你能在 JavaScript 中跳出 "forEach" 循环吗? 这是一个很棒的问题,可以挑战你对 JavaScript 的真正了解程度。 因为我们不是在讨论 for 循环 — 否则这将会非常简单:你只需要使用 break : 但你不敢在 forEach 中这样做,否则会发生灾难: 那 return 呢?嗯... 你认为这里会发生什么: return 应该在 5 时轻松结束循环并带我们到外部的 log ,对吧? 错了: 记住:forEach 接受一个回调函数,并为数组中的每个项目调用它。 // 类似这样的: Array.prototype.forEach = function (callback, thisCtx) { const length = this.length; let i = 0; while (i < length) { // 📣 callback 仅运行一次 callback.call(thisCtx, this[i], i, this); i++; } }; 所以 return 只是结束当前的回调调用和迭代;对停止整个循环完全没有作用。 就像这里;试图从 func1() 结束 func2(
………………………………