Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2020年1月以降、すべてのブラウザーで利用可能です。
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 (Immediately Invoked Function Expression) として使うことができ、アドホックな非同期反復可能オブジェクトを作成することができます。詳しくは関数の章も参照してください。
次の例では、無名の非同期ジェネレーター関数を定義し、それを x に代入しています。この関数は引数の2乗を返します。
| ECMAScript® 2027 Language Specification # sec-async-generator-function-definitions |
ブラウザー互換性一覧表を表示するには、JavaScript を有効にしてください。
より良いインターネットのための青写真。
このコンテンツの一部は、©1998–2026 個人の mozilla.org 協力者です。コンテンツはクリエイティブ・コモンズ・ライセンスのもとで利用できます。