Web開発では、データは最初から手元にあるわけではありません。サーバー通信、データベース操作、ファイルの読み込みなど、「完了までに時間がかかる処理」 が頻繁に発生します。
JavaScriptは シングルスレッド(一度に一つのことしかできない)で動作するため、重い処理を待っている間、画面が固まってしまっては困ります。そこで登場するのが Promise(約束) という仕組みです。
以下の fetchUserData() 関数は、呼び出すとすぐに結果を返さず、「あとで結果を渡すよ」という約束(Promiseオブジェクト) を返します。
これを受け取るために、現代のJavaScript(ES2017以降)では async と await という構文を使います。これはコードをまるで「同期処理(上から下へ順番に実行)」のように見やすく書ける革命的な機能です。
非同期処理とエラーハンドリング
堅牢なアプリケーションでは「成功したとき」だけでなく「失敗したとき(サーバーダウン、通信エラーなど)」の対策が必須です。
async/await 構文では、同期処理と同じ `try…catch` 構文でエラーを捕まえることができます。

共有コメント 共有されるコメント欄です。