运用场景:按钮频繁点击,页面resize等
- window 的 resize、scroll
- mousedown、mousemove
- keyup、keydown
- input 的 input 事件
const debounce=(func,delay)=>{
var timeouts=null;
return function(){
if(timeouts){
clearTimeout(timeouts);
}
timeouts=setTimeout(()=>{
func.apply(this,arguments);
},delay)
}
}