间隔和超时

如果未指定延迟,则默认为 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 以来,支持传递函数。