JavaScriptの継承について知っておくべきことすべて



この記事では、例を使用してJavaScriptで継承を実装する方法に関する詳細で包括的な知識を提供します。

継承は、オブジェクト指向プログラミングの重要な概念です。従来の継承では、基本クラスのメソッドが派生クラスにコピーされます。それでは、JavaScriptの継承を次のように理解しましょう。

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認定トレーニングは、エンタープライズアプリケーション開発に関するこれらすべての新しい概念をカバーすることを目的としています。

質問がありますか?この記事のコメントセクションにその旨を記載してください。折り返しご連絡いたします。