函数去抖和函数节流

网友投稿 1224 2022-10-23

函数去抖和函数节流

函数去抖和函数节流

函数去抖(debounce):当调用函数n秒后,才会执行该动作,若在这n秒内又调用该函数则取消前一次并重新计算执行时间(频繁触发的情况下,只有足够的空闲时间,才执行代码一次)

function debounce(delay, cb) { let timer return function () { if (timer) clearTimeout(timer) timer = setTimeout(function () { cb() }, delay) }}

函数节流(throttle):函数节流的基本思想是函数预先设定一个执行周期,当调用动作的时刻大于等于执行周期则执行该动作,然后进入下一个新周期(一定时间内js方法只跑一次。比如人的眨眼睛,就是一定时间内眨一次)

function throttle(cb, delay) { let startTime = Date.now() return function () { let currTime = Date.now() if (currTime - startTime > delay) { cb() startTime = currTime } }}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:移动端的1px的解决方案
下一篇:Python 深度学习框架Keras资源分享
相关文章

 发表评论

暂时没有评论,来抢沙发吧~