防抖&节流
防抖:
防抖就是单位时间内,频繁触发某个事件,只执行最后一次。
一般用于搜索框的关键词
实现方法:
利用lodash.js
第三方库中的方法
_.debounce(函数对象, 延时毫秒值)
:将原函数进行防抖处理后返回
1 | let newFn = _.debounce(oldFn, 114514) |
手写防抖
:原理就是利用一个定时器,但是在定时器前面清除定时器
,这样就可以做到把前面触发的定时器清除,执行最后一个创建的定时器
1 |
|
节流:
节流:就是单位时间内,频繁触发某个事件。只执行一次。
一般用于页面滚动监听事件、防止用户频繁点击
实现方法:
利用lodash.js
第三方库中的方法
_.throttle(函数对象, 延时毫秒值)
:将原函数进行防抖处理后返回
1 | let newFn = _.throttle(oldFn, 114514) |
手写节流
:原理就是利用一个定时器,再创建一个变量作为锁,每次创建定时器都需要判断锁为true,当创建完后就把锁改成false,定时器执行完后才会把锁改成true
1 |
|
- 标题: 防抖&节流
- 作者: 郭浪
- 创建于: 2023-02-20 11:35:50
- 更新于: 2023-08-05 10:37:12
- 链接: https://redefine.ohevan.com/2023/02/20/防抖/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。