タグ付けされた質問 「promises」

1
コールバックとPromiseの間に根本的な違いは本当にありますか?
シングルスレッドの非同期プログラミングを行うとき、私がよく知っている2つの主なテクニックがあります。最も一般的なのは、コールバックを使用することです。つまり、コールバック関数をパラメーターとして非同期に動作する関数に渡すことを意味します。非同期操作が終了すると、コールバックが呼び出されます。 jQueryこのように設計されたいくつかの典型的なコード: $.get('userDetails', {'name': 'joe'}, function(data) { $('#userAge').text(data.age); }); ただし、このタイプのコードは、前のコードが終了したときに追加の非同期呼び出しを次々に行いたい場合、面倒で高度にネストされる可能性があります。 2番目のアプローチはPromiseを使用することです。Promiseは、まだ存在しない可能性のある値を表すオブジェクトです。値にコールバックを設定できます。コールバックは、値を読み取る準備ができたときに呼び出されます。 Promiseと従来のコールバックアプローチの違いは、非同期メソッドがクライアントがコールバックを設定するPromiseオブジェクトを同期的に返すようになったことです。たとえば、AngularJSでPromiseを使用した同様のコード: $http.get('userDetails', {'name': 'joe'}) .then(function(response) { $('#userAge').text(response.age); }); だから私の質問は次のとおりです。実際に本当の違いはありますか?違いは純粋に構文上のようです。 ある技術を他の技術よりも使用する深い理由はありますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.