首頁 > web前端 > js教程 > 為什麼我的 setInterval 函數只會跑一次?

為什麼我的 setInterval 函數只會跑一次?

Linda Hamilton
發布: 2024-11-28 22:34:11
原創
807 人瀏覽過

Why Is My setInterval Function Only Running Once?

了解 setInterval 函數及其執行

setInterval 函數是一個有用的工具,用於在 JavaScript 中安排任務定期運行。但是,開發人員可能會遇到回呼函數似乎只執行一次而不是連續執行的問題。

問題:回調未如預期執行

一個常見原因行為是 setInterval 函數呼叫的錯誤使用。回調應該是函數引用,而不是函數呼叫。

說明:函數呼叫與引用

在提供的範例:

window.setInterval(timer(), 1000)
登入後複製

定時器函數後面少了一個括號,導致它是函數呼叫而不是引用。這會導致立即執行計時器函數,並隨後設定執行結果的間隔,該間隔是未定義的。

解決方案:更正語法

要更正此問題發出並確保回調的連續執行,請使用函數引用,如下所示:

window.setInterval(timer, 1000);
登入後複製

或者,您可以使用匿名函數作為回調,它較短,但可能會降低較大函數的可讀性:

window.setInterval( function() {
  console.log("timer!");
}, 1000)
登入後複製

這可確保計時器函數按指定的1000 毫秒間隔運行。

以上是為什麼我的 setInterval 函數只會跑一次?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板