在需要有实时性更新数据的项目Φ我们经常会用到很多js两种定时器器,我们可能需要一个可以一次性清除所有js两种定时器器的方法并且不通过指定ID一个一个去清除,鉯下提供两种解决方案:
首先计时器中的开关问题
连续点擊的时候会开启很多计时器,当3秒的时候这些计时器同时向任务队列提交任务,event loop是一个不断循环的过程找到任务就执行,没有时间間隔
再开启当前计时器的时候,清除前面的计时器任务连续点击,保证最后一次点击的任务执行前面点击开启的任务都被清除了。這种解决办法叫函数防抖
函数节流:无论用户怎么触发,代码还是按照一定的规矩有序的执行。
比如 我们点击按钮 每三秒发送一次请求无论怎么点击,都是三秒执行一次
2.js两種定时器执行:当方法执行完成js两种定时器器停止(但是js两种定时器器还在,只不过没用了);