如果我想在给定的间隔内执行代码,我可以像下面这样使用setInterval()
函数。如何设置一个超时来停止setInterval方法的执行;不在计数器上,但在给定时间段后
let currentStatus = 'InProgress';
console.log(currentStatus);
if (currentStatus === 'InProgress') {
let timerId = setInterval(async () => {
console.log('tick')
}, 2000);
}
只是想分享一个简单的例子,所以发布这个问题& a
我们可以使用setTimeout()
函数和clearInterval()
函数来设置超时时间,超时后,setInterval中TimerHandler指定的代码将停止执行。
let currentStatus = 'InProgress';
console.log(currentStatus);
if (currentStatus === 'InProgress') {
let timerId = setInterval(async () => {
console.log('tick')
}, 2000);
// after 10 seconds stop
setTimeout(() => { clearInterval(timerId); console.log('stop'); }, 10000);
console.log('done');
}
详情请参阅此链接:https://javascript.info/settimeout-setinterval