函数的节流与防抖

1、函数节流
例子:
var flag = true;
document.getElementById('throttle').onscroll = function() {
if(!flag = true) {return;}
flag = false;
setTimeout(function() =>{
console.log('函数节流')
flag = true
},500)
}
原理:
。。。

2、函数防抖
例子:
var timer = false
ducument.getElementById('debounce').onscroll = function() {
clearTimeout(timer);
timer = setTimeout(function () => {
console.log('函数防抖')
}, 500)
}
原理:
。。。

区别:
相同之处:
防止函数被无意义的高频调用;
不同之处:
节流:确保函数在特定时间内最多执行一次;(比如人眨眼睛)
防抖:确保函数持续触发不执行,而只有一段时间内不触发才执行。
优点:通过setTimeout控制函数的执行时机,节约性能,不至于多次触发复杂的业务逻辑导致页面卡顿。

全部评论

相关推荐

有工作后先养猫:太好了,是超时空战警,我们有救了😋
点赞 评论 收藏
分享
11-01 08:48
门头沟学院 C++
伤心的候选人在吵架:佬你不要的,能不能拿户口本证明过户给我。。球球了
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务