間隔和超時

如果未指定延遲,則預設為 0 毫秒。但是,實際延遲會比這更長 ; 例如, HTML5 規範指定最小延遲為 4 毫秒。

即使在延遲為零的情況下呼叫 setTimeout 時,setTimeout 呼叫的函式也將非同步執行。

請注意,即使你已經進行了操作並轉移到下一個程式碼語句,許多操作(如 DOM 操作)也不一定完成,因此你不應該假設它們將同步執行。

使用 setTimeout(someFunc, 0)someFunc 函式的執行排入當前 JavaScript 引擎呼叫堆疊的末尾,因此在完成這些操作後將呼叫該函式。

這是可能的,以通過含有代替功能(setTimeout(function(){some..code}, 1000))的 JavaScript 程式碼(setTimeout("some..code", 1000))的字串。如果程式碼放在一個字串中,稍後將使用 eval() 解析它。出於效能,清晰度和安全原因,不建議使用字串式超時,但你可能會看到使用此樣式的舊程式碼。自 Netscape Navigator 4.0 和 Internet Explorer 5.0 以來,支援傳遞函式。