当前位置:网站首页 > 技术博客 > 正文

防抖技术



前端

开发中,

防抖

和节流是两种常用的优化技术,用于限制函数的执行频率,提升页面性能。

防抖

(debounce):指触发事件后在一定时间内函数只执行一次,如果在这段时间内又触发了该事件,则会重新计算函数执行时间。

防抖

常用于输入框搜索、页面滚动等频繁触发事件的场景。

实现代码如下:

 javascript function debounce(fn, delay) { let timer = null return function() { clearTimeout(timer) timer = setTimeout(() => { fn.apply(this, arguments) }, delay) } } 

节流(throttle):指连续触发事件但是在一定时间内只执行一次函数。节流常用于页面的滚动、窗口的resize等连续触发事件的场景。

实现代码如下:

 javascript function throttle(fn, delay) { let timer = null return function() { if (!timer) { timer = setTimeout(() => { fn.apply(this, arguments) timer = null }, delay) } } } 

需要注意的是,

防抖

和节流的实现都使用了闭包来保存计时器变量,以及返回一个新的函数。在实际应用中,可以根据具体的需求来选择使用哪种优化技术。

  • 上一篇: cp-i命令
  • 下一篇: stat 命令
  • 版权声明


    相关文章:

  • cp-i命令2024-11-05 07:30:04
  • 多线程编程有什么用途2024-11-05 07:30:04
  • 内置声卡精调2024-11-05 07:30:04
  • 好看的ui网站2024-11-05 07:30:04
  • mysql选择前10条数据2024-11-05 07:30:04
  • stat 命令2024-11-05 07:30:04
  • ip命令详解2024-11-05 07:30:04
  • 深入理解计算机系统怎么2024-11-05 07:30:04
  • 移位指令的用途2024-11-05 07:30:04
  • okhttp3(OKHttp3使用详解)2024-11-05 07:30:04