🚀 Promise.all で非同期凊理を䞊行実行しよう

🚀 Promise.all で非同期凊理を䞊行実行しよう

投皿日: 2025幎06月22日

Tips
孊習振り返り
芁玄
  • Promise.allを䜿うこずで、耇数の非同期凊理を同時に実行し、凊理時間を短瞮できる。
  • 独立した凊理䟋Slack通知、メヌル送信を䞊行しお行うこずで、ナヌザヌ䜓隓を向䞊させる。
  • Promise.allの䜿い方や泚意点に぀いおは、公匏ドキュメントやJavaScript Infoで詳しく解説されおいる。
音声で蚘事を再生
0:00

JavaScriptでは、APIの呌び出しや倖郚サヌビスずの通信など「非同期凊理」を扱う堎面がよくありたす。

たずえば、「A瀟のAPIに通知を送り」「B瀟にメヌルを送る」ずいった2぀の凊理をするずき、それぞれを順番に実行しおいるず時間がかかるこずがありたす。

そこで䟿利なのが Promise.all です。

🐢 よくあるコヌド順番に実行

たずは非同期凊理を順番に実行しおいる䟋です。

// A瀟に通知を送る
await notifyServiceA("メッセヌゞA");

// B瀟にメヌルを送る
const result = await sendEmail({
  to: "example@example.com",
  subject: "こんにちは",
  body: "本文です",
});

このコヌドは、A瀟ぞの通知が完了しおからB瀟ぞのメヌル送信が始たるので、時間がかかりたす。

⚡ Promise.all を䜿っお䞊行凊理

Promise.all を䜿えば、2぀の凊理を同時に実行できたす。

try {
  const [notifyResult, emailResult] = await Promise.all([
    notifyServiceA("メッセヌゞA"),
    sendEmail({ to: "...", subject: "...", body: "..." }),
  ]);
} catch (error) {
  console.error("どちらかの凊理で゚ラヌが発生したした", error);
}

✍ たずめ

🚀 Promise.all で非同期凊理を䞊行実行しようShiftBブログ

🧪 どんなずきに䜿う

  • Slack通知ずメヌル送信

  • デヌタベヌス保存ず倖郚APIぞの連携

  • 耇数のファむルアップロヌド

など、「耇数の独立した凊理」があるずきに Promise.all は非垞に圹立ちたす。

🚀 ちょっずの工倫でアプリが速くなる

Promise.all を䜿えば、あなたのアプリの埅ち時間を短瞮し、ナヌザヌ䜓隓を向䞊させるこずができたす。ぜひ掻甚しおみおください

🔗 参考リンク・公匏ドキュメント

â—Ÿ JavaScript公匏MDN

  • Promise.all() - MDN Web Docs
     👉 Promise.all の基本的な䜿い方や、返される Promise の挙動に぀いお詳しく解説されおいたす。䟋も豊富で非垞にわかりやすいです。

â—Ÿ JavaScript Info初心者䞭玚者向け

  • Promise.all - JavaScript.info
     👉 実際のナヌスケヌスや泚意点、倱敗時の動䜜などが䞁寧に説明されおいたす。

シェア

Threads
icon
さかした
おじさんでも孊べるをモットヌに。 以前はRuby(3幎)、今は React / Next.js を䞭心に、孊習䞭。
Loading...
蚘事䞀芧に戻る
Threads
0