ホームページ  >  記事  >  ウェブフロントエンド  >  Promise.race() と async-await を JavaScript で説明しますか?

Promise.race() と async-await を JavaScript で説明しますか?

WBOY
WBOY転載
2023-09-08 22:49:071436ブラウズ

在 JavaScript 中解释 Promise.race() 和 async-await ?

このチュートリアルでは、Promise.race() メソッドについて学習します。 Race() メソッドの名前が示すように、race() メソッドに引数として渡される Promise はレースを実行します。

したがって、どの Promise が最初に解決されても、それは Race() メソッドによってのみ実行され、他の Promise は決して実行されません。

Promise.race()

JavaScript の Promise.race メソッドを使用すると、一連の Promise の最初のものが履行または拒否されるのを待機し、発生した結果またはエラーを処理できます。入力された Promise の 1 つが履行または拒否されると、履行または拒否された Promise と、その Promise の値または理由が返されます。

ユーザーは、次の構文に従って Promise.race() メソッドを使用して、最初に解決された Promise を実行できます。

リーリー

上記の構文では、Promise.race() メソッドは最初のパラメーターとして iterable を受け取り、正常に実行された Promise の応答を「then」ブロック内で処理できます。

Hereiterable 最初に解決される、その中の任意の Promise を実行するための Promise のセットなどの反復可能なオブジェクトを受け取ります。

###文法###

JavaScript で async-await で Promise.race メソッドを使用する方法の構文は次のとおりです:

リーリー

ここで、

promise1promise2 などは、待ちたい Promise です。 Promise.race メソッドは、解決または拒否される最初の入力 Promise の値または理由を含む、解決または拒否された Promise を返します。 非同期関数の例では、try/catch ステートメントを使用してエラー条件を処理します。入力 Promise が拒否された場合は、catch ブロックが実行されます。

例 1

この例では、複数の Promise を作成し、それらを解決または拒否するために Promise 内にタイマーを設定します。 Promise の配列を引数として Race() メソッドに渡しました。

出力は、race() メソッドが実行する Promise が、タイマーがないために拒否されたことを示しています。したがって、race() メソッドは最初の Promise を実行します。これは、拒否または解決された場合でも早期に実行されます。

リーリー

例 2

この例では、別の API を使用し、fetch メソッドを使用して Promise を作成します。リクエストと呼ばれる一連の約束があります。

Race() メソッドを使用してすべてのリクエストを解決します。どの Promise が最初に解決されるかに関係なく、「then」ブロックに URL を出力します。

リーリー

race() メソッドは、ユーザーが最初に解決された Promise の応答を使用する必要がある場合、それが拒否または解決された場合でも使用できます。ユーザーが最初に正常に解決された Promise の結果を使用する必要がある場合は、Promise.any() メソッドを使用する必要があります。

以上がPromise.race() と async-await を JavaScript で説明しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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