本文實例講述了js類的繼承定義與用法。分享給大家供大家參考,具體如下:
如何實現類的繼承呢?
有如下2個構造函數:
function PeopleClass(){ this.type = "人";};PeopleClass.ptototype = { getType:function(){ alert("這是一個人"); }};function StudentClass(name,sex){ this.name = name; this.sex = sex;};
如何讓『學生』對象來繼承『人』對象呢?可使用apply方法
將父對象的構造函數綁定在子對象上,代碼如下:
function PeopleClass(){ this.type = "人";};PeopleClass.ptototype = { getType:function(){ alert("這是一個人"); }};function StudentClass(name,sex){ PeopleClass.apply(this,arguments); this.name = name; this.sex = sex;};var stu = new StudentClass("lily","男");alert(stu.type); //[人]
從運行的結果來看,StudentClass繼承了PeopleClass的屬性『人』。
而方法的繼承,只要循環使用父對象的prototype
進行復制,即可達到繼承的目的。方法如下:
function StudentClass(name,sex){ PeopleClass.apply(this,arguments); var prop; for(prop in PeopleClass.prototype){ var proto = this.constructor.prototype; if(!proto[prop]){ proto[prop] = PeopleClass.prototype[prop]; } proto[prop]["super"] = PeopleClass.prototype; } this.name = name; this.sex = sex;};var stu = new StudentClass("lily","女");alert(stu.type); //[人]stu.getType(); //[這是一個人]
以上就是js中繼承的實現。
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答