今回は、JS継承と多重継承の使い方と、JS継承多重継承を使用する際の
注意点を紹介します。実際の事例を見てみましょう。
最新のEC6にはすでにクラス関連の機能が備わっていますが、普及性や古いコードを読む必要性の観点から、この知識を理解する必要があります。 この記事の構成:
① 原理と分析
② 単純なカプセル化後の適用 1. 継承
① 原理と分析
最初の写真:
このコードのアイデアを使用して継承を実装します。つまり: var inherit=function(objBase){
var F=function(){}; //第一步:定义一个函数F
F.prototype=objBase; //第二步:将传进来的基类对象(objBase)赋给函数F的原型(F.prototype)
return new F(); //第三步:返回一个F对象(已经具备了objBase特征)
}
Function.prototype.inherit=function(objBase){
this.prototype=new objBase();
}
var Person=function(){
this.name="倩倩";
this.sex="女";
}
var Student=function(){
this.id="0712";
}
Student.inherit(Person);
var student=new Student();
alert(student.name +","+ student.sex +","+ student.id);
① 原理と分析
複数のオブジェクトのメンバーを現在のオブジェクトに与える var o1={name:"倩倩"} //对象的字面值
var o2={sex:"女"}
var She=function(){}
She.prototype={}; //先声明
for(var k in o1){
She.prototype[k]=o1[k];
}
for(var k in o2){
She.prototype[k]=o2[k];
}
var she=new She();
alert(she.name + "," + she.sex);
Function.prototype.inherits=function(){ var arr=arguments; //将接收到的arguments对象传给数组arr this.prototype={}; for(var i=0;i<arr.length;i++){ for(var k in arr[i]){ var obj=arr[i]; this.prototype[k]=obj[k]; } } } var o1={name:"倩倩"} //对象的字面值 var o2={sex:"女"} var She=function(){} She.inherits(o1,o2); var she=new She(); alert(she.name + "," + she.sex);
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、 の他の関連記事に注目してください。 PHP中国語ウェブサイトです!
推奨書籍:
JS 配列と JSON オブジェクトを動的に追加、変更、削除する方法
以上がJS継承と多重継承の使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。