在小程序中用setTimeout递归调用和用setInterval 的区别

发布于 8 年前作者 jingfu4113 次浏览最后编辑 8 年前来自 ask
  • 当前 Bug 的表现(可附上截图)

  • 预期表现

  • 复现路径

  • 提供一个最简复现 Demo

一个定时刷新二维码的功能 一开始用了setInterval 但是如果手机熄屏 再打开这个页面的话 这个二维码就会疯狂变化

而如果用setTimeout递归调用的话 则不会

是不是setInterval 如果线程阻塞的话 js的执行队列中还是有这个函数的操作队列  然后当页面不阻塞的时候就执行原来队列里的计划?

1 回复
jyin
jyin1 楼6 年前

可以尝试下调用定时器前先清除定时器,避免多次调用同一个定时器。