防抖
1.借助外部变量
var myBounce=null
function Bounce(){
if(myBounce){
clearTimeout(myBounce);
}
myBounce=setTimeout(function(){
console.log('函数触发');
},1000)
}
2. 闭包
function myBounce1(fn,delay){
let timer
return function(){
clearTimeout(timer)
timer=setTimeout(()=>{
fn()
},delay)
}
}
function fn(){
console.log(111);
}
document.querySelector(".box").addEventListener("click",throttle1(fn,1000))
节流
1. 借助外部变量
var flag=true;
function throttle(){
if(flag){
flag=false
setTimeout(() => {
console.log('节流函数执行');
flag=true
}, 1000);
}
}
2. 闭包节流
function throttle1(fn,delay){
let timer=true
return function(){
i