AsyncGeneratorFunction
AsyncGeneratorFunction オブジェクトは、非同期ジェネレータ関数 のメソッドを提供します。 JavaScript で、すべての非同期ジェネレータ関数は実際には AsyncGeneratorFunction オブジェクトです。
なお、AsyncGeneratorFunction はグローバルオブジェクトではありません。以下のコードで取得できます。
js
const AsyncGeneratorFunction = async function* () {}.constructor;
AsyncGeneratorFunction は Function のサブクラスです。
試してみましょう
コンストラクター
AsyncGeneratorFunction()-
新しい
AsyncGeneratorFunctionオブジェクトを生成します。
インスタンスプロパティ
親である Function から継承したインスタンスプロパティもあります。
これらのプロパティは AsyncGeneratorFunction.prototype で定義されており、すべての AsyncGeneratorFunction インスタンスで共有されます。
AsyncGeneratorFunction.prototype.constructor-
このインスタンスオブジェクトを生成したコンストラクター関数です。
AsyncGeneratorFunctionインスタンスにおいては、初期値はAsyncGeneratorFunctionコンストラクターです。 AsyncGeneratorFunction.prototype.prototype-
すべての非同期ジェネレータ関数は同じ
prototypeプロパティを共有していて、それはAsyncGenerator.prototypeです。それぞれの非同期ジェネレーター関数のインスタンスは自分自身でprototypeプロパティも持ちます。非同期ジェネレーター関数が呼び出されると、返される非同期ジェネレーターオブジェクトは非同期ジェネレーター関数のprototypeプロパティを継承し、そのプロパティはAsyncGeneratorFunction.prototypeを継承します。 AsyncGeneratorFunction.prototype[@@toStringTag]-
@@toStringTagプロパティの初期値は文字列"AsyncGeneratorFunction"です。このプロパティはObject.prototype.toString()で使用します。
インスタンスメソッド
親である Function からインスタンスメソッドを継承しています。
仕様書
| Specification |
|---|
| ECMAScript Language Specification # sec-asyncgeneratorfunction-objects |
ブラウザーの互換性
BCD tables only load in the browser