函数防抖和函数节流的简单实现

函数防抖

将时间间隔较短的一组操作,归并为一个操作。

// fn 需要处理的函数
// t 时间
function debounce(fn, t=500){
    let timer = null;
    return function(){
      timer&&clearTimeout(timer);
      timer = setTimeout(fn, t)
    }
}

函数节流

保证函数以均匀规整的时间间隔执行。

function throttle(fn, t=500){
    let canRun = true;
    return function(){
      if(!canRun){return};
      canRun = false;
      setTimeout(function(){
        fn();
        canRun = true;
      }, t)
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容