コードをコピー コードは次のとおりです。 JS ユーザー オブジェクトの定義 <br>function User(name,age){ <br>this.name=name, <br>this.age=age, <br>this.getName=function(){ <br>return this .name; <br>}, <br>this.getAge=function(){ <br>return this.age; <br>} <br>} <br>// オブジェクトをインスタンス化します<br>var use=new User( "aa",21); <br>alert(use.getAge()); <br>//js オブジェクトの継承<br>/* <br>指向性オブジェクトの継承はオブジェクト プログラミング手法では不可欠ですが、JavaScript で継承メカニズムを実装するにはどうすればよいでしょうか? JavaScript は厳密なオブジェクト指向言語ではないため、オブジェクトの継承も異なります。多角形を表す基本クラス Polygon も作成しましょう。多角形には、辺の数 (sides) と面積を計算するための共通のメソッド (getAreas) という共通の属性があります。このように、Polygon クラスは次の定義のようになります。 <br>*/ <br>function Polygon(iSides){ <br>this.sides = iSides; <br>} <br>Polygon.prototype.getAreas = function (){ <br>return 0; <br>} <br>/* <br>基底クラスでは領域を決定できないため、ここでは 0 を返します。 <br>次に、サブクラス Triangle (三角形) を作成します。明らかに、この三角形は Polygon から継承するため、この Triangle クラスが Polygon クラスを継承し、三角形の面積を返すように Polygon クラスの getAreas メソッドをオーバーライドする必要があります。 。 JavaScript での実装を見てみましょう: <br>*/ <br>function Triangle(iBase, iHeight){ <br>Polygon.call(this,3); //ここでは Polygon.call() を使用します。コンストラクターに 3 をパラメータとして渡し、これが三角形であることを示します。辺は決定されているため、サブクラスのコンストラクターで辺を指定する必要はありません。 <br>this.base = iBase; //Triangle の底面。 <br>this.height = iHeight; //三角形の高さ<br>} <br>Triangle.prototype = new Polygon(); <br>Triangle.prototype.getAreas = function(){ <br>return 0.5 * this.base *this.height; // 基本クラスの getAreas メソッドをオーバーライドして、三角形の面積を返します <br>} <br><br>/* <br>上記の実装を参照してください。別の四角形を定義します: <br>*/ <br>function Rectangle(iWidth, iHeight){ <br>Polygon.call(this,4); <br>this.width = iWidth; <br>this.height = iHeight; <br>} <br>Rectangle.prototype = new Polygon(); <br>Rectangle.prototype.getAreas = function(){ <br>return this.width * this.height; <br>さて、上で基本クラスと 2 つのサブクラスを定義しました。これら 2 つのサブクラスが適切に動作するかどうかをテストしてみましょう: <br>*/ <br>var t = new Triangle(3,6); <br>var r = new Rectangle(4,5); <br>alert(t.getAreas()); //出力 9 は正しいことを意味します<br>alert(r.getAreas()) //出力 20 は正しいことを意味します<br></スクリプト><br><br><br> </div>