理解JavaScript 中setTimeout 的行為
當嘗試使用setTimeout 函數實現時間延遲時,必須了解該函數的原因可以立即執行,而不是等待預期的持續時間。
問題:
在您的程式碼中,您錯誤地立即呼叫函數 testfunction() ,然後將其傳回值傳遞給 setTimeout 進行調度。這會導致函數立即執行。
解決方案:
正確的語法包括從函數呼叫中刪除括號:
setTimeout(testFunction, 2000);
省略括號,您將對函數本身的參考傳遞給setTimeout,而不是立即執行它並提供其回傳值。這確保了函數的執行被安排在指定的延遲。
因此,要以 2 秒的延遲執行 testFunction,請使用下列語法:
setTimeout(testFunction, 2000);
以上是為什麼我的 JavaScript `setTimeout` 函數會立即執行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!