防抖函数就是在短时间内多次触发同一个函数时,在短时间内多次点击先清除上次的定时器,然后在从最后一次点击的时间重新开始定时
<button id='btn'></button>
<script>
function debounce(fn,delay){
let timer;
return function(){
clearTimeout(timer)
timer = setTimeout(()=>{
fn.apply(this,arguments)
},delay)
}
}
function fn(){
console.log('测试防抖')
}
// 事件监听
document.querySelector('#btn).addEventListener('click',debounce(fn,1000))
</script>