1、setInterval() 和 setTimeout()
在 JavaScritp 中使用计时事件两个关键方法: setInterval() 和 setTimeout()
- setInterval(func, time)间隔指定的时间time重复执行函数func
- setTimeout(func, time)间隔指定的时间time执行一次函数func
t1 = setInterval(() => {
console.log('开始定时...每过15秒执行一次刷新')
this.refreshStatus()
}, 15000)
t2 = setTimeout(() => {
console.log('3分钟后执行一次checkInstructions')
this.checkInstructions(indexes)
}, 180000)
停止计时器分别使用,
- window.clearInterval(t1) // 停止定时器t1
- window.clearTimeout(t2) // 停止定时器t2
2、有关 setTimeout没有延时 立即执行的问题
setTimeout(() => {
this.checkInstructions(indexes)
}, 180000)
setTimeout(this.checkInstructions(indexes), 180000)
上面的写法会延时3分钟之后再执行this.