for ループ内の非同期リクエストの順序が一貫していない問題を解決する
for ループ内の一貫性のない非同期リクエストの順序の問題を解決する
仕事中に問題が発生しました
for ループを実行し、ループされた ID を使用して 2 番目のリクエストを作成します。
これにより問題が発生します
リクエスト結果の戻り順序が矛盾しています
理由: 非同期リクエストwill コールバック イベントはマイクロタスクのイベント キューに入れられ、マクロタスクの実行後にマイクロタスクが実行されます。詳細については、イベント キューのメカニズムを参照してください。
[関連コースの推奨事項: JavaScript ビデオ チュートリアル]
解決策:
map メソッドを通じてループ リクエストを作成します
非同期リクエスト メソッドをカプセル化し、 return a promise
これは、複数の promise
promise を promise でラップした配列を返します。 all() メソッド 新しい promise インスタンス
// 通过Promise把所有的异步请求放进事件队列中 getInfo(item ,index) { const ms = 1000 * Math.ceil(Math.random() * 3) return new Promise((resolve,reject) => { setTimeout(() => { axios.get(id).then((result) => { resolve(result) }) }, ms) }) } // 返回多个promise let promise = arr.map((item,index) = > { arr.forEach((item, index) => { return getInfo(item, index) }) }) // 对返回的promise数组进行操作 Peomise.all(promise).then((allData) => { arr.forEach((item, index) => { // ...... }) })
この記事は js チュートリアル 列からのものです。ぜひ学習してください。
以上がfor ループ内の非同期リクエストの順序が一貫していない問題を解決するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

Kernelsecuritycheckfailure (カーネルチェック失敗) は比較的一般的な停止コードですが、理由が何であれ、ブルースクリーンエラーは多くのユーザーを悩ませます、当サイトでは 17 種類のエラーをユーザーに丁寧に紹介します。 kernel_security_check_failure ブルー スクリーンに対する 17 の解決策 方法 1: すべての外部デバイスを削除する 使用している外部デバイスが Windows のバージョンと互換性がない場合、Kernelsecuritycheckfailure ブルー スクリーン エラーが発生することがあります。これを行うには、コンピュータを再起動する前に、すべての外部デバイスを取り外しておく必要があります。

Web アプリケーションが開発と変化を続けるにつれて、並列および非同期リクエストの処理が PHP バックエンド API 開発における重要なトピックになっています。従来の PHP アプリケーションでは、リクエストは同期的に実行されます。つまり、リクエストは応答を受信するまで待機するため、アプリケーションの応答速度とパフォーマンスに影響します。ただし、PHP には並列リクエストと非同期リクエストを処理する機能が備わっており、これらの機能により、大量の同時リクエストをより適切に処理し、アプリケーションの応答速度とパフォーマンスを向上させることができます。この記事では、PHP バックエンド API 開発に対処する方法について説明します。

Win10 Skype はアンインストールできますか? 多くのユーザーは、このアプリケーションがコンピューターの既定のプログラムに含まれており、削除するとシステムの動作に影響するのではないかと心配しているため、これは多くのユーザーが知りたい質問です。この Web サイトはユーザーを支援します。Win10 で Skype for Business をアンインストールする方法を詳しく見てみましょう。 Win10 で Skype for Business をアンインストールする方法 1. コンピューターのデスクトップで Windows アイコンをクリックし、設定アイコンをクリックしてに入ります。 2. 「適用」をクリックします。 3. 検索ボックスに「Skype」と入力し、見つかった結果をクリックして選択します。 4. 「アンインストール」をクリックします。 5

Vue 開発における非同期リクエスト データのリアルタイム更新の問題を解決する方法 フロントエンド テクノロジの発展に伴い、ユーザー エクスペリエンスとページ パフォーマンスを向上させるために非同期リクエスト データを使用する Web アプリケーションがますます増えています。 Vue 開発では、非同期リクエスト データのリアルタイム更新の問題をどのように解決するかが重要な課題です。リアルタイム更新とは、非同期に要求されたデータが変更されたときに、ページを自動的に更新して最新のデータを表示できることを意味します。 Vue には、非同期データのリアルタイム更新を実現するためのソリューションが複数あります。 1. Vueを使用したレスポンシブマシン

for を使用して n 階乗を求める方法: 1. 「for (var i=1;i<=n;i++){}」ステートメントを使用して、ループの走査範囲を「1~n」に制御します; 2. ループ内body, use "cj *=i" 1からnまでの数値を掛けて変数cjに代入; 3. ループ終了後、変数cjの値をnの階乗にして出力します。

違い: 1. for はインデックスを介して各データ要素をループしますが、forEach は JS の基礎となるプログラムを介して配列のデータ要素をループします; 2. for はbreak キーワードを使用してループの実行を終了できますが、forEach はそれができません; 3 . forはループ変数の値を制御することでループの実行を制御できるが、forEachはできない; 4. forはループ外でループ変数を呼び出すことができるが、forEachはループ外でループ変数を呼び出すことができない; 5. forの実行効率forEach よりも高いです。

UniApp エラー: 'xxx' 非同期リクエストが失敗した解決策 モバイル アプリケーションの急速な開発に伴い、クロスプラットフォーム開発フレームワークとしての UniApp が開発者の間でますます支持されています。ただし、他の技術フレームワークと同様に、UniApp にもいくつかの潜在的な問題があり、その 1 つは非同期リクエストが失敗したときのエラー報告の問題です。この記事では、UniApp が「'xxx' 非同期リクエストに失敗しました」というエラーを報告する一般的な理由と、いくつかの解決策を紹介します。まず、非同期リクエストとは何かを理解する必要があります。 Uで

今日のインターネット時代では、多くのアプリケーションはデータを取得または送信するためにネットワーク要求を行う必要があります。 HTTP リクエストは、最も一般的に使用されるネットワーク リクエスト メソッドの 1 つです。 Go 言語では、標準ライブラリの net/http パッケージを使用して HTTP リクエストを開始できますが、これにより現在のコルーチンがブロックされます。では、Go 言語で非同期 HTTP リクエストを実装するにはどうすればよいでしょうか?この記事では、Go 言語で非同期 HTTP リクエストを実装する 2 つの方法を紹介します。方法 1: goroutine と channelGorout を使用する
