📅  最后修改于: 2023-12-03 14:47:25.585000             🧑  作者: Mango
在JavaScript中,setInterval
函数是定时器函数之一,它可以循环执行某个函数或代码块。但是,如果在循环过程中打开了新的水龙头,可能会导致定时器执行变慢,甚至停止。
原因是JavaScript是单线程执行的,当定时器函数执行时,它会不断占用CPU资源,如果同时打开了新的水龙头,会使JavaScript执行速度下降,导致定时器函数的执行变慢。
setTimeout
函数代替setInterval
函数。setTimeout
函数只会执行一次,而setInterval
函数会一直循环执行,容易导致CPU资源占用。setInterval
函数,可以优化定时器函数的执行逻辑,减少循环次数,从而减少CPU资源占用。// setInterval实现定时器
setInterval(() => {
console.log('定时器执行中');
}, 1000);
// 改用setTimeout实现定时器
function interval(cb, time) {
setTimeout(() => {
cb();
interval(cb, time);
}, time);
}
interval(() => {
console.log('定时器执行中');
}, 1000);