← エラー辞典に戻る

JavaScript

⏳ async/awaitで待機されない

awaitを付け忘れている

😰 こんな症状

awaitを書いたのに非同期処理の結果を待たずに次の行が実行される。async/awaitの使い方で起きやすいよ。

🔍 原因

関数にasyncを付けていない、awaitを付け忘れている、またはforEachの中でawaitを使っているよ。forEachはコールバック関数の戻り値(Promise)を待たないから、中でawaitを書いても並列実行されてしまうんだ。順番に実行したいならfor...ofを使う必要があるよ。

❌ エラーが起きるコード

// 関数にasyncを付けていない、awaitを付け忘れている、またはforEachの中でawaitを使

✅ 直し方

1. 関数宣言にasyncキーワードが付いているか確認する。 2. 非同期関数の呼び出しにawaitが付いているか確認する。 3. forEach内のawaitはfor...ofループに書き換える。 4. 並列実行したい場合はPromise.all()を使う。

✅ 修正後のコード

// 関数宣言にasyncを付ける。forEach内ではawaitが効かないのでfor...ofループを使

この解決法は役立ちましたか?

🔗 関連するエラー

🔗 別カテゴリの関連エラー

📖 この問題を学べるレッスン

JavaScriptコースで基礎から学ぶ →

📝 関連ブログ記事

📖 関連する用語

🚀 JavaScriptコースで基礎を学ぼう!

エラーの原因を根本から理解するには、基礎を体系的に学ぶのが近道です。完全無料・登録不要。

JavaScriptコースを始める →

❓ 関連するQ&A