分分钟 理解防抖和节流

本文介绍了防抖和节流两种策略在处理高频事件触发时的应用,如搜索框的实时搜索请求和鼠标的连续点击。防抖确保在一段时间内的多次触发只执行最后一次,而节流则限制了事件在特定时间段内触发的频率,确保不会过度消耗资源。通过实例解释了两者的实现方式和应用场景,帮助理解两者之间的区别和选择使用场景。
摘要由CSDN通过智能技术生成

1.什么是防抖

     防抖策略debounce)是当事件被触发后,延迟 n 秒后再执行回调,如果在这 n 秒内事件又被触发,则重新计时。无论触发多少次只执行一次

例如:搜索框

 

 如果用户每敲一个字就发一次请求,那会浪费不必要的流量.

这时就可以用到防抖了,原理很简单 定时器

 利用定时器延时500毫秒在发请求,当用户在这段时间内再次输入文字,就清除上个定时器即可

可以看到只执行了一次.

 ---------------------------------------------------

2.节流

节流策略throttle),顾名思义,可以减少一段时间内事件的触发频率

在某段时间内 只触发一次

例如:鼠标连续触发某事件,如(点击)

不必每次点击都触发,可以降低计算的频率,而不必去浪费 CPU 资源.,那就用节流吧

 

 1.当点击的时候,判断是否有定时器,有的话那就是上个定时器正在执行,所以return

2.当请求发送之后,立即清空timer,方便开启下个定时器.

节流相对防抖要稍微难理解一点点.

总结:

  • 防抖:如果事件被频繁触发,防抖能保证只有最有一次触发生效!前面 N 多次的触发都会被忽略!

  • 节流:如果事件被频繁触发,节流能够减少事件触发的频率,因此,节流是有选择性地执行一部分事件!(某段时间只触发一次)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值