1) 防抖搜尋(Debounce)
輸入框每次鍵入都會觸發 input 事件,但透過防抖,只有停止輸入一段時間後才會模擬送出「搜尋請求」。
鍵入次數:0,
已送出請求(防抖後):0
查看核心程式碼(debounce)
function debounce(fn, delay = 300) {
let timer = null
return (...args) => {
clearTimeout(timer)
timer = setTimeout(() => fn.apply(null, args), delay)
}
}