無初始延遲地執行 setInterval
在 JavaScript 中,setInterval 方法以指定的時間間隔重複執行函數。但是,預設情況下,第一次執行之前會有明顯的延遲。本文探討了消除這種延遲的方法。
雖然可以在啟動計時器之前手動呼叫該函數,但它並不理想,而且很容易被忘記。更有效的方法是在函數本身內使用 setTimeout:
function foo() { // Execute function body // ... // Schedule subsequent execution setTimeout(foo, delay); } // Start the cycle foo();
此方法可確保函數執行之間的間隔一致,同時透過在必要時省略 setTimeout 呼叫來提供終止循環的靈活性。
或者,可以使用立即呼叫函數表達式(IIFE) 在單一循環中建立和啟動循環步驟:
(function foo() { ... setTimeout(foo, delay); })();
此方法透過將函數和執行計畫封裝在獨立的區塊中,消除了初始延遲並簡化了設定過程。無論您喜歡直接呼叫、setTimeout 方法還是 IIFE 方法,這些技術都提供了執行 setInterval 的便利解決方案,而不會產生不必要的初始延遲。
以上是如何在 JavaScript 中執行 setInterval 而沒有初始延遲?的詳細內容。更多資訊請關注PHP中文網其他相關文章!