【发布时间】:2021-01-05 07:51:43
【问题描述】:
const fruits = ['apple', 'mango', 'orange', 'date'];
let found = 0;
fruits.forEach((value, key) => {
if (found == 0) {
console.log("value", value)
setTimeout(() => {
if (value.length > 1) {
found = 1;
}
}, 200)
}
})
当它被捕获时停止循环 found=1 但在使用setTimout 之后它的行为不是这样如何解决它
【问题讨论】:
-
你不能停止
forEach方法,你可以改用for loop -
为什么循环内需要超时。循环将在第一次超时发生之前完成。你到底想做什么?
-
这能回答你的问题吗? Breaking out of setTimeout loop
-
你能解释一下上下文吗?为什么需要
setTimeout? -
您正在寻找的实际结果是什么。我认为这是一个 X/Y 问题。告诉我们您想看什么,我们可以提供帮助
标签: javascript loops settimeout