まず、JSクラスの継承を見てみましょう
<!doctype html> <html> <head> <meta charset = "utf-8"> <title> js class </title> </head> <body>/ * - classical継承 - */<スクリプトタイプ= "text/javascript"> //スーパークラスの動物= // } // method Animal.prototype.eat = function(){console.log(this.name + "eat"); }; //この監督者a = new Animal( "Animal"); //コンストラクターオブジェクトクラスの作成var cat = function(name、sex){//このクラスは、スーパークラス動物のコンストラクターを呼び出し、パラメーター名をit Animal.call(this、name)に渡す必要があります。 this.sex = sex; } //このサブクラスのプロトタイプオブジェクトは、スーパークラスcat.prototype = new Animal()のインスタンスに等しくなります。 //サブクラスのプロトタイプオブジェクトはスーパークラスのインスタンスに等しいため、メソッドプロトタイプ。カントラクタはスーパークラスコンストラクターコンソールと等しくなります。 //これは動物のスーパークラスへの参照であるため、自分に再割り当てする必要があります。 console.log(cat.prototype.constructor); //サブクラス自体がgetSexメソッドcat.prototype.getsex = function(){return this.sex; } //このサブクラスvar _m = new Cat( 'cat'、 'male'); // own Method Console.log(_m.getSex()); // MALE // SuperClass Method Console.log(_m.eat())を継承する; // cat </script> </body> </html>JSプロトタイプの継承を見てみましょう
<!doctype html> <html> <head> <meta charset = "utf-8"> <title> jsプロトタイプ継承</title> </head> <body> <! - プロトタイプ継承 - > <スクリプトタイプ= "text/javascript"> // clone()機能は、新しいクラスのclone = functionを作成するために使用されます。 //この文は、プロトタイプ継承の中核です。関数のプロトタイプオブジェクトは、オブジェクトliteral_f.prototype = objです。新しい_fを返します; } //オブジェクトを宣言しますリテラルfirst var animal = {somthing: 'apple'、eat:function(){console.log( "eat" + this.somthing); }} //人のサブクラスを定義する必要はありません。 //個人が提供するデフォルト値を直接取得することも、属性とメソッドconsole.log(cat.eat())を追加または変更することもできます。 cat.somthing = 'orange'; console.log(cat.eat()); //サブクラスを宣言し、クローニングvar soney = clone(cat)を実行します。 </script> </body> </html>実験できます。 JSクラスの子供の継承。constructor==父親は真実であり、プロトタイプの子どもの継承。
JSプロトタイプの継承とクラスの継承の上記の簡単な分析は、私があなたと共有するすべてのコンテンツです。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。