Zarówno resolve()
i promise()
są metodami obiektu jQuery Deferred
.
Pierwszy fragment z jQuery documentation about Deferred:
Jeden model dla zrozumienia odroczony jest myśleć o nim jako o łańcuch świadomy funkcji owijki. Metody deferred.then(), deferred.done(), i deferred.fail() określają funkcje, które mają zostać wywołane, a metody deferred.resolve (args) lub deferred.reject (args) "wywołują" funkcje z argumentami, które podasz.
Mając to na uwadze, promise()
zwraca obiekt, który jest bardzo podobny do obiektu Deferred
oprócz tego, że ma tylko then()
, done()
i fail()
metod i nie mieć resolve()
lub reject()
.
Z blogu m-ostry, o których mowa w odniesieniu promise()
:
Funkcja ta jest przydatna, gdy chcemy dać z powołaniem API coś subskrypcji, ale nie zdolność do rozwiązywania lub odrzuceniu odroczony .