1.防抖
简单理解,用户频繁点击某个按钮,重复触发点击事件(用户手抖了),这时我们要防止
这种无意义的点击,需要进行防抖处理
2.节流
简单理解,字面意思,控制水流,通过一个节流阀,控制一定时间内开关阀门
区别:
防抖和节流都是降低频率,但是也有区别,核心都是通过 setTimeOut 去实现
应用场景:
防抖可以用于搜索框,当用户输入停下来的时候,才进行搜索,而不是用户一直输入,一直搜索
节流可以用于鼠标 icon 定位等,鼠标在移动中,鼠标的 icon 不停进行相关定位,使用节流控制定位的时间精度,减少定位频率
使用:
使用 lodash 中封装的函数
防抖:
节流: