ホームページ >ウェブフロントエンド >jsチュートリアル >適切なエラー処理を使用して JavaScript で非同期操作を同時に実行するにはどうすればよいですか?
待機操作の同時実行
問題のコード スニペットは、非同期操作の実行時に問題が発生します:
const value1 = 待機しますgetValue1Async();<br>const value2 = await getValue2Async();<br>
この実装は、各操作の完了を順番に待ってから、次の操作を開始します。同時実行を有効にするには、変更されたアプローチが必要です。
最初に提示されたソリューションは、各操作の Promise を取得し、それらを個別に待機することでこれに対処しようとします。
const p1 = getValue1Async();
const p2 = getValue2Async();
const value1 = await p1;
const value2 = await p2;
このメソッドは両方の操作を並行して実行しますが、両方の Promise が拒否された場合、拒否を適切に処理できません。また、最初の操作が完了するまで待ってから 2 番目の操作を開始するため、非効率的です。
これらの問題を解決するには、Promise.all 関数を使用できます。
<br>const [value1, value2] = 待機Promise.all([getValue1Async(), getValue2Async()]);<br>
Promise.all は、Promise の配列を受け取り、入力されたすべての Promise が解決される単一の Promise を返します。解決または拒否されました。このアプローチにはいくつかの利点があります。
要約すると、同時非同期操作を実行するには適切な拒否処理を使用してくださいPromise.all:
<br>const [value1, value2] = await Promise.all([getValue1Async(), getValue2Async()]);<br>
以上が適切なエラー処理を使用して JavaScript で非同期操作を同時に実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。