首頁 >web前端 >js教程 >如何定期遞歸執行 JavaScript 函數?

如何定期遞歸執行 JavaScript 函數?

Patricia Arquette
Patricia Arquette原創
2024-12-05 08:56:101011瀏覽

How Can I Recursively Execute a JavaScript Function at Regular Intervals?

以指定的時間間隔遞歸執行函數

在 JavaScript 中,setTimeout() 函數可讓您在預先定義的時間安排函數呼叫。當您需要在特定延遲後執行操作時,這非常有用。但是,如果你想定期重複執行一個函數怎麼辦?

一種方法是使用 setInterval() 函數:

setInterval(function, delay)

該函數在以下時間連續呼叫指定的回調函數給定的時間間隔。但是,如果函數的執行時間超過間隔,此方法可能會遇到問題。

更可靠的方法是將 setTimeout() 與自執行匿名函數結合使用:

(function(){
    // Your code goes here
    setTimeout(arguments.callee, 60000);
})();

此函數安排在指定的時間間隔後對同一函數的下一次呼叫。它還確保在當前函數執行完成之前不會進行後續呼叫。 argument.callee 引用用於再次呼叫函數,但在 Ecmascript 5 中已棄用。更好的替代方案是使用命名函數並在 setTimeout 呼叫中引用它。

以上是如何定期遞歸執行 JavaScript 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn