setTimeout迭代替换setInterval

时间:2023-03-09 05:41:14
setTimeout迭代替换setInterval

一.它们之间的区别

setTimeout - 仅执行一次

setInterval - 间隔执行
二.为什么推荐用setTimeout替换掉setIntelval?
javascript是异步执行的,所以setIntelval可能会延时
三. 演示与推荐
1. setTimeout
 // setTimeout仅在时间内执行一次
setTimeout(() => {
console.log('我仅执行一次!');
}, 35 * 101)

2. setIntelval

   // setInterval执行多次
setInterval(() => {
console.log('我执行多次!');
}, 35)

3. setTimeout迭代(推荐替换setIntelval

   // setTimeout迭代
let i =0;
setTimeout(fn = () => {
i < 100 ? setTimeout(fn, 35) : false;
}, 35)