js中定時器的防抖與節流以及解決方法


首先計時器中的開關問題

開關問題

  1. 開關只有兩種結果 開和關 開-對應true  關-對應false

 

定時器的疊加問題     

         為什么會疊加?

         連續點擊的時候,會開啟很多計時器,當3秒的時候,這些計時器同時向任務隊列提交任務,event loop是一個不斷循環的過程,找到任務就執行,沒有時間間隔。

解決辦法

         再開啟當前計時器的時候,清除前面的計時器任務。連續點擊,保證最后一次點擊的任務執行,前面點擊開啟的任務都被清除了。這種解決辦法叫函數防抖

 

函數節流:無論用戶怎么觸發,代碼還是按照一定的規矩,有序的執行。

比如  我們點擊按鈕 每三秒發送一次請求,無論怎么點擊,都是三秒執行一次。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM