--- title: window.setImmediate slug: Web/API/Window/setImmediate tags: - DOM - setImmediate translation_of: Web/API/Window/setImmediate ---

{{APIRef("HTML DOM")}}{{Non-standard_header}}

该方法用来把一些需要长时间运行的操作放在一个回调函数里,在浏览器完成后面的其他语句后,就立刻执行这个回调函数。

注意: 该方法可能不会被批准成为标准,目前只有最新版本的 Internet Explorer 和Node.js 0.10+实现了该方法。它遇到了 Gecko(Firefox) 和Webkit (Google/Apple) 的阻力.

语法

var immediateID = setImmediate(func, [param1, param2, ...]);
var immediateID = setImmediate(func);

所有参数都会直接传给你的函数。

备注

{{ domxref("window.clearImmediate") }} 方法可以用来取消通过setImmediate设置的将要执行的语句, 就像 {{ domxref("window.clearTimeout") }} 对应于 {{ domxref("window.setTimeout") }}一样.

该方法可以用来替代 setTimeout(fn, 0) 去执行繁重的操作(heavy operations

可以通过以下几种方式来模仿该功能:

所有这些技术都被纳入 robust setImmediate polyfill 中.

浏览器兼容性

{{Compat("api.Window.setImmediate")}}

相关链接

{{ domxref("window.clearImmediate") }}

{{ spec("https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/setImmediate/Overview.html", "Specification: Efficient Script Yielding") }}

Microsoft setImmediate API Demo