JavaScript の継承を理解する: 包括的な説明
JavaScript はその人気にもかかわらず、継承に関しては課題があり、複数のアプローチが利用可能です。この主題をわかりやすくするために、new と Object.Create という 2 つの主要なメソッドを詳しく調べてみましょう。
Object.Create と new
両方の Object の役割を理解します。 Create と new は継承を容易にし、異なる目的を果たします。 Object.Create は、プロトタイプと呼ばれる、別のオブジェクトを継承するオブジェクトを作成するだけです。対照的に、 new は継承を確立するだけでなく、新しいオブジェクトを初期化するコンストラクター関数も呼び出します。
アプローチの決定
特定のシナリオに最適な方法望ましい結果によって異なります。コンストラクター関数を呼び出さずにプロトタイプから継承したい場合は、Object.Create が推奨されます。コンストラクターの初期化が必要な状況では、new がより適切なオプションです。
Object.Create による継承の実装
ベース オブジェクト Model から継承するには、特定の例では、次のように Object.Create を利用する必要があります。
RestModel.prototype = Object.create(Model.prototype);
このアプローチにより、 Model.prototype からプロパティとメソッドを継承する RestModel.prototype。
コンストラクターとプロトタイプの結合
Model コンストラクターの呼び出しが必要な場合は、新しいメソッドを次の場所で使用できます。 Object.Create と組み合わせて使用します。これは、以下に示すように、派生クラスのコンストラクター内で Model.call(this) を呼び出すことで実現されます。
function RestModel() { Model.call(this); // apply Model's constructor on the new object ... }
以上がJavaScript の継承メソッドは Object.Create と new のどちらを選択する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。