Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 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 |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年8月30日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.