31

jQuery の遅延機能を掘り下げています。インターネットでいくつかの例を試しました。resolve()概念は理解できましたが、との違いがわかりませんpromise()

resolve()との違いは何promise()ですか?

4

1 に答える 1

34

resolve()とはどちらもpromise()jQueryDeferredオブジェクトのメソッドです。

まず、Deferred に関する jQuery ドキュメントのスニペット:

Deferred を理解するための 1 つのモデルは、それをチェーン対応の関数ラッパーと考えることです。deferred.then()、deferred.done()、および deferred.fail() メソッドは呼び出される関数を指定し、deferred.resolve(args) または deferred.reject(args) メソッドは引数を使用して関数を「呼び出す」あなたが供給します。

そのことを念頭に置いて、は、 、 、およびメソッドのみを持ち、またはを持たないことを除いてpromise()、オブジェクトに非常に似たオブジェクトを返します。Deferredthen()done()fail()resolve()reject()

m-sharp が参照したブログ投稿からpromise():

これは、呼び出し元の API にサブスクライブするものを提供したいが、遅延を解決または拒否する機能を提供したくない場合に便利です。

于 2011-10-04T02:32:40.010 に答える