Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2017年4月以降、すべてのブラウザーで利用可能です。
async function キーワードは、式の中で非同期関数を定義するために使用できます。
非同期関数は、async function 宣言またはアロー構文を使用して定義することもできます。
メモ: 式文は async function キーワードを使用することができません。async function 宣言との混同を防ぐためです。async function キーワードは文を受け付けることができないコンテキストで現れた場合のみ、式の始まりになります。
関数名です。関数が無名の場合は省略可能です。名前は関数の本体内のみのローカルです。
paramN 省略可関数に渡される引数名です。引数の構文については、関数リファレンスを参照してください。
statements 省略可関数本体を構成する文です。
async function 式は async function 宣言とよく似ており、構文もほとんど同じです。async function 式と async function 宣言の主な違いは、async function 式が関数名を省略して無名関数を生成することができる点です。async function 式は、定義後直ちに実行される IIFE(即時実行関数式)として使用することもでき、最上位の await を模倣することができます。詳細は関数の章を見てください。
async の IIFE を使用すると、 await および for...await を、最上位の await が利用できないコンテキストで使用することができます。ここでは、アロー関数を使用して IIFE を定義していますが、 async function 式も使用できます。
| ECMAScript® 2027 Language Specification # sec-async-function-definitions |
ブラウザー互換性一覧表を表示するには、JavaScript を有効にしてください。
より良いインターネットのための青写真。
このコンテンツの一部は、©1998–2026 個人の mozilla.org 協力者です。コンテンツはクリエイティブ・コモンズ・ライセンスのもとで利用できます。