asyncとawaitの詳しい説明

1.コンセプト

Async は、asynchronous の略語であり、非同期リクエストを表します。文法では、await は async でのみ使用できると規定されているため、await は単純に async wait の略語として理解できます。つまり、async は関数を宣言するために使用されます。は非同期、awaitはこれを待つこと 非同期メソッドが実行される

2. 非同期関数

async 関数は、Promise オブジェクトを返します。関数内で直接値が直接返された場合、async は、promise.resolve を通じて直接値を Promise オブジェクトにカプセル化します。コードを参照してください。

 async function test() {
        return "test"
    }
    let res = test()
    console.log(res);

結果はこれです

 したがって、彼は then メソッドで使用できます

  async function test() {
        return "test"
    }
   test().then(res=>{
    console.log(res);
   })

結果

3. await の役割

await は、式を形成するために使用される演算子です。演算の結果は、彼が待っている演算の結果によって異なります。彼が Promise オブジェクトを待っている場合、彼は、次の結果として Promise 内のsolve の値を取得します。彼の手術。

 

 代わりに以下のように async と await を使用します

 4. async と await の利点

上記の例から、async、await、および非同期呼び出しの結果に大きな違いはないことがわかります。また、async と await の間にさらにコードがいくつかありますが、これは少し間違っているように思えます。

async と await の利点は、複数の Promise チェーン呼び出しを処理できることであり、単一の Promise ではその利点を反映できないことです。想像してみてください。複数のステップがあり、各ステップの呼び出しが前のステップの結果に依存する場合を考えてください。 then メソッドを使用してチェーン呼び出しを継続的に実行してコールバック地獄の問題を解決し、次に async と await でこのチェーン呼び出しを最適化できます。

 

よりクリアになったように感じますか?

おすすめ

転載: blog.csdn.net/qq_45662523/article/details/126683975