每天做个总结吧,坚持就是胜利!
/**
@date 2021-06-12
@description 防抖与节流
*/
复制代码
壹(序)
防抖
就是高频
的触发某个事件时,只会触发其中时间间隔超过time
的,这样可以避免
很多重复事件的触发而导致的性能消耗
。比如window
的onresize
事件。
节流
就是高频
的触发某个事件时,在给定时间间隔内只会调用一次
,同样是避免性能消耗
。比如点击按钮发送请求时。
贰(代码实现简单防抖)
简单实现防抖函数,真正使用最好是调用类库如lodash
;
const debounce = (fn, wait = 1000) => {
let timeout = null;
return function() {
clearTimeout(timeout);
timeout = setTimeout(() => {
fn.apply(this, arguments);
}, wait)
}
}
复制代码
叁(代码实现简单节流)
简单实现节流函数,真正使用最好是调用类库如lodash
;
const throttle = (fn, wait = 1000) => {
let flag = false;
return function() {
if(!flag) {
flag = true;
setTimeout(() => {
flag = false;
fn.apply(this, arguments);
})
} else {
return;
}
}
}
复制代码
肆(结语)
大家端午安康!
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END