防抖與節流函式

2022-07-28 19:45:25 字數 414 閱讀 9473

場景:在開發搜尋框的過程中,為了防止高頻觸發,減少不必要的效能浪費。我們需要用一種機制來阻止高頻觸發

兩種實現方案:

1.防抖函式:在一定時間內多次執行以最後一次執行為準

const debounce = (fn,duration)=>

return

result;

}

2.節流函式:在一定時間段內只執行一次

const throttle=(fn,duration)=>

else

,duration);}}

return

result;

}

考慮到我們的搜尋,只需要觸發一次。故選擇了防抖函式

不過這兩種方案到是對函式閉包的一種很好的應用場景,(意外收穫)

防抖與節流方案 函式防抖和節流

在前端開發的過程中,我們經常會需要繫結一些持續觸發的事件,如 resize scroll mousemove 等等,但有些時候我們並不希望在事件持續觸發的過程中那麼頻繁地去執行函式。通常這種情況下我們怎麼去解決的呢?一般來講,防抖和節流是比較好的解決方案。讓我們先來看看在事件持續觸發的過程中頻繁執行...

函式防抖與節流

因為在寫前端頁面時需要監控滑鼠滾輪,這導致在很短時間內,會觸發很多次函式,造成頁面卡頓堵塞,正巧自己在看github時看到了這個,所以自己記錄一下。函式防抖就是讓某個函式在上一次執行後,滿足等待某個時間內不再觸發此函式後再執行,而在這個等待時間內再次觸發此函式,等待時間會重新計算。underscor...

函式防抖與節流

在前端開發的過程中,我們經常會需要繫結一些持續觸發的事件,如 resize scroll mousemove 等等,但在事件持續觸發期間頻繁的執行函式在很大程度上造成了不必要的浪費。通常這種情況下我們一般使用防抖和節流是這兩種解決方案。讓我們先來看看在事件持續觸發的過程中頻繁執行函式是怎樣的一種情況...