为什么承诺被设计为立即在内部运行

2022-04-03 00:00:00 javascript promise es6-promise

根据MDN:

Executor函数由Promise实现立即执行,传递Resolve和Reject函数

做出这一决定的实际原因是什么? 为什么承诺不偷懒?


解决方案

做出这一决定的实际原因是什么?

带有回调的Promise构造函数只是一个improvement over the older deferred pattern。回调从来不是为了在计算时间上提供选择,它应该为解析程序函数提供一个具有错误处理的作用域。

为什么承诺不偷懒?

因为承诺表示的是异步结果值,所以仅此而已。它们保持简单,没有懒惰的特征(并且表示整个计算,使用开始/重复/等方法)。您只需使用返回承诺的函数即可获得承诺。

相关文章