函数防抖

函数防抖(debounce)是指事件在一定时间内事件只执行一次,如果在这段时间又触发了事件,则重新开始计时,打个很简单的比喻,比如在打王者荣耀时,一定要连续干掉五个人才能触发hetai kill '五连绝世'效果,如果中途被打断就得重新开始连续干五个人了。


适用场景:

搜索框搜索联想。只需用户最后一次输入完,再发送请求

手机号、邮箱验证输入检测

窗口resize。只需窗口调整完成后,计算窗口大小。防止重复渲染

高频点击提交,表单重复提交


const _.debounce = (func, wait) => {

  let timer;


  return () => {

    clearTimeout(timer);

    timer = setTimeout(func, wait);

  };

};


lodash中的 Debounce 


lodash中已经帮我们封装好了这个函数了,我们可以把它引入到小程序项目了,不用全部引入,只需要引入debounce.js链接:https://github.com/lodash/lodash


自己做了个小程序的代码片段,

https://developers.weixin.qq.com/s/DnSuBamw7v6d

你可能感兴趣的:(函数防抖)