W3C刚刚将Futures引入DOM标准。
关注http://dom.spec.whatwg.org/#dom-futureresolver-resolve,我了解Future.accept(value)
通知听众成功,Future.reject(exception)
通知听众失败,但Future.resolve(value)
是什么意思/做什么?
更新:我在这里找到了一个很好的教程:http://www.xanthir.com/b4PY0
答案 0 :(得分:1)
如您引用的规范中所述:
accept(value)
“接受”一个值,它将该上下文中的future
对象的值设置为您接受的任何值。然后,它将使用value
处理任何接受回调。
resolve(value)
“解析”延迟对象,它会在then
中查找value
属性。如果IsCallable(then)
为真,则会调用then
。然后它使用accept()
运行上下文对象value
。如果没有then
,则会运行reject()
。
所以基本上resolve
可以调用accept()
或reject()
本身。
我希望我刚写的内容很明确......这个过程稍微详细一点,但在规范中进行了彻底的解释。