在js for循环中的定时器。正常来讲循环多少次就会触发多个定时
例如
var time
for (var i=0;i<3;i++){
time=setTimeout(()=>{
console.log('定时器')
},100)
}
这样会打印出3次定时器
当我只想在for循环最后一次结束后才触发一次事件,
代码
var time
for (var i=0;i<3;i++){
clearTimeout(time)
time=setTimeout(()=>{
console.log('定时器')
},100)
}
主要是在cleraTimeout对对象没有要求的前提下作用
这样打印出来的只有1次定期器,不过要注意的是 setTimeout赋值的对象是全局的,不然就不能覆盖到前面一个
setInterval同理