每日前端面试题-防抖和节流

防抖:事件被触发后,等待一段时间再执行函数,等待期间事件再次触发,需要重新计时。

适用场景

  • 搜索框输入(等待用户输入完成后才进行搜索请求)

  • 窗口大小调整(等待用户调整完成后才重新计算布局)

  • 表单验证(输入完成后才验证,而非每输入一个字符就验证)

节流:在一段时间内,函数最多执行一次,即使事件被频繁触发,也会按照固定频率执行

适用场景

  • 滚动事件(如滚动加载更多)

  • 鼠标移动事件(如跟随鼠标位置的元素)

  • 频繁点击按钮(如防止重复提交)

实际开发中常用 Lodash 的现成方法:

javascript 复制代码
import { debounce, throttle } from 'lodash';

// 直接使用
window.addEventListener('resize', debounce(handleResize, 300));
相关推荐
xixingzhe22 分钟前
本地桌面客户端入门开发
前端
不磕了还不行9 分钟前
用 Vue + Element UI 把元宝搜索的返回值做成“能点开检查的证据卡片”
前端·vue.js·ui
Csvn9 小时前
WASM
前端
修己xj11 小时前
我用 AI 给自己写了一个 Markdown 编辑器,然后把它开源了
前端
FRing0311 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
幸运小猿11 小时前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html
moshuying13 小时前
网购能买Token了!
前端
h_654321013 小时前
echarts实现柱状图加一条横线
前端·echarts
风骏时光牛马13 小时前
生成一个后端标题,只需要一个标题,不需要其他的任何文本。
前端
子非鱼@Itfuture13 小时前
关于前后端联调中登录状态/登录信息失效?
java·前端