継承は、オブジェクト指向プログラミングの重要な概念です。従来の継承では、基本クラスのメソッドが派生クラスにコピーされます。それでは、JavaScriptの継承を次のように理解しましょう。
JavaScriptでの継承
JavaScriptでは、継承はプロトタイプオブジェクトを使用してサポートされます。それを「プロトタイプの継承」と呼ぶ人もいれば、「行動の委任」と呼ぶ人もいます。
プロトタイプの継承(動作委任パターン)
v1そしてv2にリンクされていますVehicle.prototypeを使用して作成されているため 新着 キーワード。
同様に、c1そしてc2にリンクされていますCar.prototypeそしてCar.prototypeにリンクされていますVehicle.prototype。
JavaScriptでは、オブジェクトを作成するときに、プロパティや動作をコピーせずに、リンクを作成します。クラスを拡張する場合にも、同様の種類のリンケージが作成されます。
動作委任リンクであるため、すべての矢印は、従来の非js継承とは反対の方向に進みます。これらのリンクは、プロトタイプチェーンと呼ばれます。
このパターンは 行動委任パターン これは一般的に知られています プロトタイプの継承 JavaScriptで。
コード:JavaScriptでの継承
!DOCTYPE html>
function Person(firstName、lastName) '不明'
this.LastName = lastName
Person.prototype.getFullName = function(){
this.FirstName + '' + this.LastNameを返します
}
c ++ gotoラベル
関数Student(firstName、lastName、schoolName、grade)
Person.call(this、firstName、lastName)
this.SchoolName = schoolName
//Student.prototype = Person.prototype
Student.prototype = new Person()
Student.prototype.constructor = Student
var std = new Student( 'James'、 'Bond'、 'XYZ'、10)
alert(std.getFullName())//ジェームズボンド
alert(std instanceof Student)// true
c ++マージソートアルゴリズム
alert(std instanceof Person)// true
このコードは次の出力を生成します。
出力:
これで、この記事は終わりです。詳細については、次のブログを参照してください。
チェックしてください 25万人以上の満足した学習者のネットワークを持つ信頼できるオンライン学習会社であるEdurekaが世界中に広がっています。 Angularは、スケーラブルでエンタープライズなパフォーマンスのクライアント側Webアプリケーションを作成するために使用されるJavaScriptフレームワークです。 Angularフレームワークの採用率が高いため、アプリケーションのパフォーマンス管理はコミュニティ主導であり、間接的により良い雇用機会を促進しています。 Angular認定トレーニングは、エンタープライズアプリケーション開発に関するこれらすべての新しい概念をカバーすることを目的としています。
質問がありますか?この記事のコメントセクションにその旨を記載してください。折り返しご連絡いたします。