javascript函式節流是什麼
說明
1、讓連續執行的函式,變為固定時間段間斷地執行。在一段頻繁操作中,可以觸發多次,但是觸發的頻率由自己指定。
2、應用場景有DOM元素的拖拽功能實現、計算滑鼠移動的距離等。
還有Canvas 模擬畫板功能、搜尋聯想。
例項
/* @params: func[function]:最後要觸發執行的函式 wait[number]:觸發的頻率 @return 可以被呼叫執行的函式 */ function throttle(func,wait = 300){ let timer = null, previous = 0;//記錄上一次操作時間 return function anonymouse(...params){ let now = new Date(),//記錄當前時間 remaining = wait - (now - previous);//記錄還差多久達到我們一次觸發的頻率 if(remaining <= 0){ //兩次操作的間隔時間已經超過wait了 window.clearInterval(timer); timer = null; previous = now; func.call(this,...params); }else if(!timer){ //兩次操作的間隔時間還不符合觸發的頻率 timer = setTimeout(() => { timer = null; previous = new Date(); func.call(this,...params); }, remaining); } } }
以上就是javascript函式節流的介紹,希望對大家有所幫助。更多Javascript學習指路:
推薦操作環境:windows7系統、jquery3.2.1版本,DELL G3電腦。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3402/viewspace-2829188/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 節流函式throttle是什麼鬼?函式
- 【js】什麼是函式節流與函式去抖JS函式
- javascript純函式是什麼JavaScript函式
- JavaScript中函式防抖、節流JavaScript函式
- javascript之函式防抖與節流JavaScript函式
- 節流函式怎麼寫?函式
- 【譯】JavaScript中純函式是什麼JavaScript函式
- javascript函子是什麼JavaScript
- [譯]掌握 JavaScript 面試:什麼是純函式?JavaScript面試函式
- 函式防抖和函式節流函式
- 函式節流與函式防抖函式
- JS函式節流和函式防抖JS函式
- 區分函式防抖&函式節流函式
- 一什麼是函式?函式
- 什麼是仿函式?函式
- 函式節流和防抖函式
- JS函式節流,去抖JS函式
- 函式防抖和節流函式
- 瞭解 JavaScript 函數語言程式設計 -- 什麼是純函式JavaScript函數程式設計函式
- 什麼是Python函式?如何定義函式?Python函式
- python mmap()函式是什麼?Python函式
- 深入理解函式節流與函式防抖函式
- 淺談js函式節流和函式防抖JS函式
- js 函式防抖和節流JS函式
- 函式的防抖和節流函式
- JS專題之節流函式JS函式
- 函式的防抖與節流函式
- 理解Underscore中的節流函式函式
- js防抖 和節流函式JS函式
- 一圖秒懂函式防抖和函式節流函式
- 什麼是 JavaScript 裡的非同步操作和回撥函式JavaScript非同步函式
- Python3 函式是什麼Python函式
- 什麼是C++ setw() 函式?C++函式
- python函式過載是什麼?Python函式
- 什麼是IIFE(立即呼叫函式表示式)?函式
- 函式防抖debounce與節流throttle函式
- 理解並優化函式節流Throttle優化函式
- 效能優化之節流函式---throttle優化函式