开发者社区 问答 正文

防抖是什么

防抖是什么

展开
收起
问答小能手! 2021-02-10 17:10:16 4402 分享 版权
1 条回答
写回答
取消 提交回答
  • 来自昆仑山,真名陆离。

    防抖:将多次高频操作优化为只在最后一次执行,通常使用的场景是:用户输入,只需再输入完成后做一次输入校验即可。
    实现逻辑:在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时。 实现代码:

    // 定时器
    const debounce = (fn, ms = 0) => {
      let timeoutId;
      return function(...args) {
        clearTimeout(timeoutId);
        timeoutId = setTimeout(() => fn.apply(this, args), ms);
      };
    };
    
    
    2021-02-10 17:11:37
    赞同 展开评论
问答地址: