js中的防抖函式

2022-02-14 03:51:19 字數 500 閱讀 4483

舉個例子:   

我們直接執行了乙個 refresh(),這個refresh函式會被執行30次,

這樣的話就太過於頻繁了,我們就可以將refresh放入防抖函式中去,生成乙個新的函式,之後,我們就使用新的函式

上面說的可能有些抽象了,看看下面的**,估計會好理解一些

/**

* 封裝乙個防抖動方法

* debounce: 防抖函式,  它的兩個引數=>  func:函式(要進行防抖的函式)    delay: 毫秒(傳入乙個時間限制,毫秒)

* let timer = null;  宣告乙個timer為null

* if(timer) cleartimeout(timer) ***************> 如果timer不為空,那麼清空它(乾掉他)

* * delay :傳入的毫秒,在這也就是延遲時間

*/

debounce(func, delay) , delay);

};}

JS中的函式防抖 debounce

概念 函式防抖 debounce 就是指觸發事件後,在 n 秒內函式只能執行一次,如果觸發事件後在 n 秒內又觸發了事件,則會重新計算函式延執行時間。舉個栗子,坐電梯的時候,如果電梯檢測到有人進來 觸發事件 就會多等待 10 秒,此時如果又有人進來 10秒之內重複觸發事件 那麼電梯就會再多等待 10...

js 中函式的防抖和節流

1.函式的防抖,類似於法師技能讀條,每點選一次技能,技能都會重新引導,使用場景如搜尋時使用者輸入資訊 2.函式的節流,類似於fps遊戲槍械的射擊頻率,即使一直按著左鍵,但是每秒射出的子彈是一定的,使用場景如監聽使用者滑到底部載入更多 例子 在html裡寫乙個input,呼叫如下 ajax函式就是模擬...

js中函式節流與函式防抖

函式節流 概念 設定乙個特定時間,讓函式在特定的事件內只執行一次。實現原理 settimeout 控制狀態的鎖 例項 需求 使用者點選按鈕列印 你好!我是知秋y 並且在點選按鈕後3秒後才能再列印,期間使用者點選列印不會執行列印 你好!我是知秋y 實現 函式防抖 例子 電腦在無操作的2分鐘後將進入休眠...