Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【JavaScript ECMAScript】AsyncGeneratorFunction::AsyncGeneratorFunction.prototype.prototypeインスタンスデータプロパティの使い方

AsyncGeneratorFunction.prototype.prototypeインスタンスデータプロパティの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

AsyncGeneratorFunction.prototype.prototypeプロパティは、非同期ジェネレーター関数を呼び出したときに返されるAsyncGeneratorオブジェクトのプロトタイプオブジェクトを保持するプロパティです。非同期ジェネレーター関数は、async function*構文で定義され、yieldキーワードとawaitキーワードを組み合わせて、非同期的に値を順次生成する特別な関数です。この関数を実行すると、非同期イテレーションプロトコルに準拠したイテレーターオブジェクト、すなわちAsyncGeneratorオブジェクトが生成されます。

このAsyncGeneratorFunction.prototype.prototypeプロパティが指し示すオブジェクトは、生成されたすべてのAsyncGeneratorオブジェクトのプロトタイプとなります。つまり、AsyncGeneratorオブジェクトは、このプロトタイプオブジェクトから共通のメソッドやプロパティを継承します。具体的には、非同期イテレーターとして動作するために必要なnext()return()throw()といったメソッドが、このプロトタイプオブジェクトに含まれています。

開発者はこれらの継承されたメソッドを使用して、非同期ジェネレーター関数が生成する値を非同期的に取得したり、ジェネレーターの実行を中断・再開したり、エラーを通知したりといった操作を行うことができます。このプロパティは、JavaScriptのプロトタイプベースの継承メカニズムにおいて、非同期ジェネレーターの共通の振る舞いを定義し、標準化するために不可欠な要素です。通常、開発者がこのプロパティに直接アクセスして変更することは稀ですが、AsyncGeneratorオブジェクトがどのように機能するかを理解する上で重要な概念です。

構文(syntax)

1AsyncGeneratorFunction.prototype.prototype === Function.prototype;

引数(parameters)

引数なし

引数はありません

戻り値(return)

AsyncGenerator.prototype

AsyncGeneratorFunction.prototype.prototype は、AsyncGeneratorFunction のインスタンスから生成される非同期ジェネレータのプロトタイプオブジェクトを返します。このプロトタイプオブジェクトは、非同期ジェネレータのメソッドやプロパティを定義しています。

関連コンテンツ