requestIdleCallback vs promise



我刚刚发现了window.requestIdleCallback,我想知道它与普通承诺的区别。

据我所知,JS已经擅长排队承诺,所以除非requestIdleCallback使用优先级较低的不同队列,否则我看不到任何好处。在这种情况下,我认为这很好,因为我希望有一种方法来明确哪些代码的优先级低于渲染。

window.requestIdleCallback只是在浏览器空闲期间运行该功能,以避免影响动画和输入响应等。

Promise只是使用异步代码的一种方式。该代码可能在浏览器未空闲时运行(如果promise未挂起(,并可能影响延迟关键事件。

因此,promise可能在浏览器空闲期间运行,也可能不运行,但requestIdleCallback将始终在空闲期间运行(假设没有超过超时(。

请注意,这两个概念不能互换。是的,您可以运行异步";承诺;requestIdleCallback中的代码,但回调不应用于替换promise的功能。也就是说,您不应该用回调来代替promise的使用,而是在适当的情况下将它们一起使用。

以下是关于window.requestIdleCallback:的一些信息

https://developer.mozilla.org/en-US/docs/Web/API/Window/requestIdleCallback

这里的承诺:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise

最新更新