防抖和节流的区别
防抖-debounce
防抖的基本思想是在事件被触发后的规定时间段内,如果事件没有再次被触发,则对目标函数进行调用。如果在设定的时间段内再次触发事件,则重新计时。
举例:防抖500ms
事件触发时不会立即执行,如果500ms内事件没被再次触发就执行,如果500ms内被再次触发,就重新计算时间。
间隔不超过500ms的系列频繁操作,只执行最后一次超过500ms的。
业务场景
input用户输入,实时搜索、校验等
节流-throttle
节流则是在一定时间内确保事件处理函数只运行一次,即使在这段时间内事件被多次触发
举例:节流500ms
事件触发时立即执行,时间间隔500ms内,无论触发多少次都不会执行。每500ms内只执行一次
业务场景
1.多少秒之后获取验证码
2.resize和scroll事件
参考
https://blog.csdn.net/weixin_48082900/article/details/128901788