最近在练习的时候发现一个问题,多次运行setInterval、setTimeout时它们的间隔会越来越短,找资料时查到@fineline的这篇解答——javascript中setInterval越来越快的问题解决方法,马一下。
博主给出了两种方法
var timer
function do(){
//clearInterval要放在方法开始,不然的话,下面的代码还没运行到clearInterval,又开始了循环了。
clearInterval(timer)
//do something....
timer = setInterval(()=>{
do()
},1000)
}
do()
或
function do(){
//do something....
setTimeout(()=>{
do()
},1000)
}
do()
本文介绍了如何避免JavaScript中setInterval和setTimeout导致的间隔缩短问题,通过两种方法:一是确保clearInterval在do方法开始时执行,二是使用setTimeout替代。博主提供了具体的代码示例来演示这两种解决方案。
2425

被折叠的 条评论
为什么被折叠?



