親クラスを持つ:
function Animal() {
// do something
}
Animal.prototype.walk = function() {
alert('I am walking.');
};
および子クラス:
function Lion() {
// do something
}
のプロトタイプLion
を継承したい場合、一般的な方法は次のとおりです。Animal
Lion.prototype = new Animal();
// Set the constructor to Lion, because now it points to Animal
Lion.prototype.constructor = Lion;
これはこれと何らかの点で異なりますか (パフォーマンスとしてではなく結果として)?
$.extend(Lion.prototype, Animal.prototype);
jquery 以外の開発者向け:$.extend
すべてのプロトタイプ メソッドと属性を Animal から Lion に 1 つずつコピーします。
私は JavaScript の継承の専門家ではありません。私は通常、すべてが機能するフロントエンド開発に MVC フレームワークを使用しますが、プロトタイプの継承がどのように機能するかについても理解したいと思っています。
ノート! この件に関する記事をたくさん読みました。クラス機能を実装する「プラグイン」がたくさんあることは知っています。これは私が必要とするものではありません。主題に関する記事をリンクするだけでなく、質問に答えてください (それが答えている場合を除く)。
ありがとうございました!