AsyncGeneratorFunction() コンストラクター
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
AsyncGeneratorFunction()
コンストラクターは AsyncGeneratorFunction
オブジェクトを生成します。
なお、 AsyncGeneratorFunction
はグローバルオブジェクトではありません。 以下のコードを評価することで得られます。
js
const AsyncGeneratorFunction = async function* () {}.constructor;
AsyncGeneratorFunction()
コンストラクターは直接使用することを意図しておらず、Function()
の説明で述べた注意事項はすべて AsyncGeneratorFunction()
にも当てはまります。
構文
js
new AsyncGeneratorFunction(functionBody)
new AsyncGeneratorFunction(arg0, functionBody)
new AsyncGeneratorFunction(arg0, arg1, functionBody)
new AsyncGeneratorFunction(arg0, arg1, /* …, */ argN, functionBody)
AsyncGeneratorFunction(functionBody)
AsyncGeneratorFunction(arg0, functionBody)
AsyncGeneratorFunction(arg0, arg1, functionBody)
AsyncGeneratorFunction(arg0, arg1, /* …, */ argN, functionBody)
メモ: AsyncGeneratorFunction()
は new
があってもなくても呼び出すことができます。どちらも新しい AsyncGeneratorFunction
インスタンスを生成します。
引数
Function()
を参照してください。
例
コンストラクターの使用
次の例では、AsyncGeneratorFunction
コンストラクターを使用して非同期ジェネレータ関数を作成します。
js
const AsyncGeneratorFunction = async function* () {}.constructor;
const createAsyncGenerator = new AsyncGeneratorFunction("a", "yield a * 2");
const asyncGen = createAsyncGenerator(10);
asyncGen.next().then((res) => console.log(res.value)); // 20
仕様書
Specification |
---|
ECMAScript Language Specification # sec-asyncgeneratorfunction-constructor |
ブラウザーの互換性
BCD tables only load in the browser