function debounce(fn, delay) {
let that = this
let timer = null
return function () {
let args = arguments
if (timer) {
clearTimeout(timer)
}
timer = setTimeout(() => {
fn.apply(that, args)
}, delay)
}
}
function test(e) {
console.log(e)
}
let debounceTest = debounce(test, 1000)
document.querySelector('#input').addEventListener('input', (e) => {
debounceTest(e.target.value)
})
js节流防抖
于 2019-03-15 11:26:08 首次发布