setInterval
是 JavaScript 中的一个定时器函数,用于每隔指定的时间间隔执行一次回调函数。clearInterval
是用于清除定时器的函数,可以停止 setInterval
的执行。
setInterval
可以更简洁地实现定时功能。setTimeout
,只执行一次。setInterval
,每隔一定时间重复执行。当你单击某物,然后单击 clearInterval
,然后再次单击几秒钟后 setInterval
,可能会出现定时器不按预期工作的情况。
setInterval
的返回值(定时器 ID)没有正确保存,可能会导致无法清除定时器。setInterval
执行期间多次点击,可能会导致多个定时器同时运行。setInterval
或 clearInterval
时,禁用按钮或添加防抖动处理。let intervalId;
function startInterval() {
// 清除之前的定时器
clearInterval(intervalId);
// 启动新的定时器
intervalId = setInterval(() => {
console.log('定时器执行');
}, 1000);
}
function stopInterval() {
clearInterval(intervalId);
}
// 假设有一个按钮,点击后启动定时器
document.getElementById('startButton').addEventListener('click', startInterval);
// 假设有一个按钮,点击后停止定时器
document.getElementById('stopButton').addEventListener('click', stopInterval);
通过上述方法,可以确保 setInterval
和 clearInterval
的正确使用,避免定时器不按预期工作的问题。
领取专属 10元无门槛券
手把手带您无忧上云