查漏补缺——说说setInterval()和clearInterval()
问题
如题所示
答案
相关源码:
let timer = setInterval(() => {
let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
let speed = Math.ceil(scrollTop / 5)
document.documentElement.scrollTop = scrollTop - speed
if (scrollTop === 0) {
clearInterval(timer)
}
}, 20)
setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。这里执行的周期是20毫秒。clearInterval(timer),clearInterval()这里系统API用来消除原来的计时器,也就是timer,这里指定的ID值是它自己,先这样理解先。

浙公网安备 33010602011771号