JavaScriptjs css html收藏

#什么是防抖和节流,他们的应用场景有哪些

2022-06-06  本文已影响0人  Mr_余

防抖(debounce)

触发高频事件后 n 秒内函数只会执行一次,如果 n 秒内高频事件再次被触发,则重新计算时间

#示例代码:

节流(throttle)

高频事件触发,但在 n 秒内只会执行一次,所以节流会稀释函数的执行频率

#示例代码

#总结 (简要答案)

防抖:防止抖动,单位时间内事件触发会被重置,避免事件被误伤触发多次。代码实现重在清零 clearTimeout。防抖可以比作等电梯,只要有一个人进来,就需要再等一会儿。业务场景有避免登录按钮多次点击的重复提交。

节流:控制流量,单位时间内事件只能触发一次,与服务器端的限流 (Rate Limit) 类似。代码实现重在开锁关锁 timer=timeout; timer=null。节流可以比作过红绿灯,每等一个红灯时间就可以过一批。

上一篇 下一篇

猜你喜欢

热点阅读