javascript - 从回调函数内部停止 setInterval
问题描述
我setInterval(foo, 1000);
在 JavaScript 中使用 1 秒后调用名为 foo 的函数。在函数中,foo
我发送 api 请求以检查某些内容。我想停止setInterval
依赖于 api 请求的响应foo
。
解决方案
正如您在此处看到的,setInterval
返回一个可用于clearInterval
停止间隔的数字。
如果您将该数字存储在某个地方,您可以稍后在回调函数中使用它。
例如:
const map = {}
const foo = () => {
// ...your async stuff goes here
clearInterval(map.interval)
}
map.interval = setInterval(foo, 1000)