您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關js如何實現函數節流,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
函數節流(Throttle)
節流的目的是防止某些操作執行的太快。比如在調整瀏覽器大小的時候會出發onresize
事件,如果在其內部進行一些DOM
操作,這種高頻率的更愛可能會使瀏覽器崩潰。為了避免這種情況,可以采取函數節流的方式。
function throttle(method, context){ clearTimeout(method.tId); method.tId = setTimeout(function(){ method.call(context); }, 100) }
這里接受兩個參數,要執行的函數,執行的環境。執行時先清除之前的定時器,然后將當前定時器賦值給方法的tId
,之后調用call
來確定函數的執行環境。
一個應用的例子
function resizeDiv(){ let div = document.getElementById('div'); div.style.height = div.offsetWidth + "px"; } window.onresize = function(){ throttle(resizeDiv); }
關于“js如何實現函數節流”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。