Я копаю в jQuery отложенные функции. Я пробовал несколько примеров в Интернете. Я понял его концепцию, но я не понимаю разницы между resolve() и promise().
В чем разница между resolve() и promise()?
Ответ 1
Оба resolve() и promise() являются методами объекта jQuery Deferred.
Сначала фрагмент из документации jQuery о Отложенных:
Одна модель для понимания Отложенная - это думать о ней как о цепочки функций. Отложенные. Then(), отложенные.(), и методы отложенных .fail() определяют функции, которые должны быть вызваны, и отложенные.революционные (args) или отложенные. (args) методы "вызывают" функции с аргументами, которые вы предоставляете.
С учетом этого promise() возвращает объект, который очень похож на объект Deferred, за исключением того, что он имеет только методы then(), done() и fail() и не имеет resolve() или reject().
Из сообщения в блоге m-sharp, относящегося к promise():
Это полезно, когда вы хотите дать вызывающему API что-то подписаться, но не способность разрешать или отклонять отложенные.