JavaScript 中 Deferreds、Promise 和 Future 的区别
在 JavaScript 中,deferreds、promise 和 futures 通常用于处理异步操作。每个概念都有其独特的一组特征:
Deferreds
在正式文档中从未明确定义,deferreds 通常用作 Promise 解析的仲裁者,实现解决和拒绝功能。它们也可以作为 Promise 实现,从而能够使用 then 函数。
Promises
Promise 代表了此上下文中最全面的概念。它们封装异步操作的结果,公开接受另一个目标函数的 then 函数。 Promises/A 规范为 Promises 的行为方式设定了标准,解决了早期 Promises/A 规范中的歧义。
Futures
当前讨论中不太常用的术语,futures 是指抽象同步性和错误处理而不提供 then 功能的代理对象。例如,FutureJS 一般使用该术语来实现此类目的。
主要区别
总之,虽然这些术语有时可以互换使用,但它们各自具有不同的特征。 Deferreds 是 Promise 解析背后的驱动力,Promise 代表了异步操作的整体策略,而 futures 是一个不太常用的抽象同步性术语。
以上是JavaScript 中的 Deferreds、Promise 和 Future 之间有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!