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

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

适用场景

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

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

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

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

适用场景

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

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

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

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

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

// 直接使用
window.addEventListener('resize', debounce(handleResize, 300));
相关推荐
我是真菜1 小时前
彻底理解js中的深浅拷贝
前端·javascript
江畔柳前堤1 小时前
github实战指南07-CLI 与高级技巧
前端·人工智能·chrome·深度学习·github·caffe·issue
kisdiem2 小时前
ReAct:让大模型一边推理,一边行动
前端·react.js·前端框架
西部荒野子2 小时前
JS 如何跑进两个原生世界
前端
RANxy2 小时前
AntV 入门系列第一篇:从零开始的数据可视化之旅
前端
小小小小宇2 小时前
前端 WebRTC 全解析与应用
前端
华玥2 小时前
优化滚动列表,使用虚拟滚动
前端
小小小小宇2 小时前
前端 WebAssembly 全解析与应用
前端
huangdong_3 小时前
京东商品图片视频批量下载与m3u8视频合并技术完整实现方案
大数据·前端·数据库
尽兴-3 小时前
4.1 智能体核心:Agent、Sub-Agent、ReAct、规划执行
前端·javascript·react.js·agent·react·subagent