返回延迟本身和返回defer.promise之间的区别

时间:2014-01-13 12:18:51

标签: javascript promise jquery-deferred

返回def和返回def.promise()

之间有什么区别?
var def = $.Deferred();
// some code to set def

return def;
// or
return def.promise();

1 个答案:

答案 0 :(得分:3)

延迟可由其来电者解决或拒绝。 该承诺旨在提供给任意数量的消费者,每个消费者都会独立地遵守决议。

这个概念不允许消费者改变Deffered的状态,这是很酷的功能。

http://blog.mediumequalsmessage.com/promise-deferred-objects-in-javascript-pt1-theory-and-semantics