函数去抖debounce

1.什么是函数去抖

乘坐电梯时,一个人按下电梯进入电梯后,此时如果另一个人也按下了该层电梯,电梯不会运动,这种状态会一直持续到一段时间(waitTime)后无人按下该层电梯按钮。

2.为什么要使用函数去抖

执行过多的DOM操作可能导致浏览器挂起或崩溃,如resize和scroll这样的可能高频操作的事件。

为了防止这些问题,因此使用函数去抖。

3.怎么使用函数去抖

function debounce(fn, waitTime, context) {
 var timeId = null;

 return function() {
   clearTimeout(timeId);
   
   timeId = setTimeout(fn.bind(context), waitTime);
 };
}

4.应用

var self = this;
window.addEventListener('resize', debounce(resizeHandler, 1000, self));
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容