我刚开始研究承诺。我发现它们非常有趣,但我有一些疑问我无法找到答案。
$.Deferred().promise
,$.get().promise
和$.fn.promise().promise
功能相同。 我是对的吗? $.Deferred().promise===$.get().promise
会返回false? $('#mybox').hide(3000).promise()
将创建一个promise对象,一旦动画队列为空,将被解析。在以下情况下,等效的基本程序是什么:
I. $.get().promise() : Is it a queue that is being watched? If yes, which one?
If no, which is the trigger for the above promise object to be resolved?
II. var defer=new $.Deferred().promise() : The same question!
希望你帮我澄清一下......
答案 0 :(得分:1)
then
/ catch
(或jQuery的类似情况)回调都将以它们附加的相同顺序被回调<登记/>
II。你不会想这样做,因为你无法在延期中访问解决/拒绝功能以解决承诺 - 除非jQuery在返回的承诺中公开解决/拒绝,这不是似乎是这样的答案 1 :(得分:0)
===
返回false,这意味着这些方法是单独定义的。hide
的具体实现)。