1. 场景:监听页面变化->做一些事情
old 频繁执行
function init() {
console.log('resize')
}
window.addEventListener('resize', init)
new 延迟执行: 每次会清空上个定时器
function init() {
console.log('resize')
}
function fun(delay, callback) {
let timer
return function() {
// 清空计时器
clearTimeout(timer)
timer = setTimeout(() => {
callback.apply(this, arguments)
}, delay)
}
}
window.addEventListener('resize', fun(100, init))