防抖:固定时间内,多次操作变成一次。固定时间内事件只允许发生一次。
function antiShake(fn, wait){
let timeOut = null;
return args => {
if(timeOut) clearTimeOut(timeOut);
timeOut = setTimeOut(fn,wait);
}
}
节流: 一定时间内只调一次函数, 一定时间内多个事件合为一个
function throttle(fn,wait) {
let timeOut = null
return args => {
if(!timeOut) {
timeOut = setTimeOut(()=>{
fn();
timeOut = null
},wait)
}
}
}