繼承之原型繼承和構(gòu)造函數(shù)繼承

原型繼承

//無法實現(xiàn)多重繼承,創(chuàng)建了一個子類的實例
//如果對子類實例的屬性進(jìn)行了修改,那么創(chuàng)建其他子類的時候都會受到影響
function superfunc(){
   this.name = "baiying";
  this.age = 18;
  this.getName = function(){
    alert(this.age +"歲的"+this.name);
   }
 }

 function sub(){
   this.hobby = 'eat';
 }


 sub.prototype = new superfunc();
 var huanglizhen = new sub();
 console.log(huanglizhen.hobby); //eat
 huanglizhen.getName();//alert "18歲的baiying"

借用構(gòu)造函數(shù):可傳參

 function superfunc1(){
   this.name = "baiying";
   this.age = 18;
   this.getName = function(){
     alert(this.age +"歲的"+this.name);
   }
 }

 function sub1(){
   this.hobby = 'eat';
   superfunc1.call(this);
 }
 var huanglizhen = new sub();
 console.log(huanglizhen.hobby); //eat
 huanglizhen.getName();//alert "18歲的baiying"
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容