async
および はawait
、非同期操作を処理するために使用される JavaScript のキーワードです。
async
このキーワードは、関数を非同期関数として宣言するために使用され、Promise オブジェクトを返します。非同期関数では、await
キーワードを使用して非同期操作の完了を待機し、その結果を同期的に取得できます。
await
このキーワードは非同期関数内でのみ使用でき、Promise を返す式の前に置くと、Promise オブジェクトが解決されて結果が返されるまで非同期関数の実行を一時停止できます。await
キーワードを使用すると、非同期コードを同期コードのように見せることができ、理解しやすく、記述しやすくなります。
async
と の主な機能はawait
次のとおりです。
-
非同期コードの簡素化:非同期コードの作成と理解がよりシンプルかつ直感的になり、コールバック地獄や Promise チェーン呼び出しの複雑さを回避できます
async
。await
-
同期スタイルのエラー処理:
try-catch
この構造を使用すると、非同期操作のエラーを捕捉して同期的に処理できるため、コードの可読性と保守性が向上します。 -
非同期操作を順番に実行する:
await
キーワードを使用して、コードの順序で非同期操作を順番に実行し、コールバック関数または Promise チェーン呼び出しでのネストや理解しにくいコード構造を回避します。 -
コードの編成と読みやすさの向上:非同期コードの構造をより明確かつ整然とさせ、コードの編成、保守、読みやすさを向上させます
async
。await
await
これは非同期関数内でのみ使用でき、Promise を返す非同期操作のみを待機できることに注意してください。通常の関数で使用するとawait
構文エラーが発生します。また、await
使用する場合は関数内に入れておかないasync
とエラーが報告されます。
サンプルコード:
async function fetchData() {
try {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
console.log(data);
} catch (error) {
console.error('Error fetching data:', error);
}
}
fetchData();
上記のコードの関数は、キーワード waitを使用して戻り結果を要求し、成功条件とエラー条件を処理するfetchData
非同期関数です。このようにして、非同期操作を同期的な方法で記述して処理できます。await
fetch