ホームページ  >  記事  >  ウェブフロントエンド  >  Promise の実装に関するステップバイステップのチュートリアル

Promise の実装に関するステップバイステップのチュートリアル

coldplay.xixi
coldplay.xixi転載
2020-09-02 17:22:461576ブラウズ

Promise の実装に関するステップバイステップのチュートリアル

#[関連する学習の推奨事項: JavaScript ビデオ チュートリアル ]# #はじめに

多くの JavaScript 初心者はコールバック地獄に支配される恐怖を感じており、Promise 構文をマスターするまでは安心しません。多くの言語にはすでに Promise が組み込まれていますが、JavaScript での実際の推進は、Promise をサポートする jQuery 1.5 の

$.ajax

の再構築であり、その使用法はチェーンと一貫しています。 jQuery が提唱する呼び出し。その後、ES6 が誕生すると、誰もが普遍的な Promise の時代に入り始め、その後、ES8 では JavaScript の非同期記述をよりエレガントにするために非同期構文が導入されました。 今日は、Promise を段階的に実装していきます。Promise をまだ使用したことがない場合は、この記事を読む前に Promise の構文に慣れておくことをお勧めします。

コンストラクター

既存の

Promise/A

仕様では、Promise オブジェクトの由来は規定されていません。jQuery では、Promise オブジェクトは $.Deferred() を呼び出すことで取得されます。ES6 では、Promise は取得されますPromise クラスのオブジェクトをインスタンス化することによって。ここでは、ES 構文を使用してクラスを構築し、インスタンス化を通じて Promise オブジェクトを返します。Promise はすでに存在するため、このクラスに一時的に Deferred という名前を付けます。 <pre class="brush:php;toolbar:false">class Deferred {  constructor(callback) {    const resolve = () =&gt; {      // TODO     }    const reject = () =&gt; {      // TODO     }    try {       callback(resolve, reject)     } catch (error) {       reject(error)     }   } }复制代码</pre>コンストラクターはコールバックを受け入れます。コールバックを呼び出すときは、resolve と拒否の 2 つのメソッドを渡す必要があります。

Promise の状態

Promise は 3 つの状態に分かれています:

Promise の実装に関するステップバイステップのチュートリアル
##⏳
Promise の実装に関するステップバイステップのチュートリアル
    : お待ちください、これが Promise の初期状態です;
  • Promise の実装に関するステップバイステップのチュートリアル

以上がPromise の実装に関するステップバイステップのチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。