人人都要会的防抖和节流
11/20/2025, 2:52:48 PM
#JavaScript#历史文章迁移
防抖和节流都是防止短时间内高频触发事件的方案;
防抖原理:如果一段时间内事件触发了多次,那么只执行最后一次(实时搜索框进行搜索,取最后一次结果);
节流原理:要执行的事件每隔一段时间会被冷却,无法执行;(类似于游戏里面限制你的攻速,你手速再快也是这点攻速)
防抖和节流在某些时候很像,但是防抖被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时。节流n秒内不管你怎么点都是1次。理解这个原理就好写防抖和节流了。
防抖函数:

HTML代码:
<input type="text" placeholder="防抖输入" id="debounceInput" />
JS代码:

节流函数:

其余HTML和JS代码和防抖类似,这里就不重复发了。