我正在深入研究jQuery的延迟功能。我在互联网上尝试了几个例子。我理解它的概念,但我不理解resolve()
和promise()
之间的区别。
resolve()
和promise()
之间有什么区别?
答案 0 :(得分:33)
resolve()
和promise()
都是jQuery Deferred
对象上的方法。
首先是jQuery documentation about Deferred的一个片段:
理解延迟的一个模型是将其视为一个 链感知功能包装器。 deferred.then(),deferred.done(), 和deferred.fail()方法指定要调用的函数和 deferred.resolve(args)或deferred.reject(args)方法“调用”了 函数与你提供的参数。
考虑到这一点,promise()
会返回一个与Deferred
对象非常相似的对象,只是它只有then()
,done()
和{{1}方法和不有fail()
或resolve()
。
来自m-sharp的博客文章提及reject()
:
当您想要将调用API提供给某些内容时,这非常有用 订阅,但不能解决或拒绝延期。