js類的繼承定義與用法分析
本文實例講述了js類的繼承定義與用法。分享給大家供大家參考,具體如下:
如何實現(xiàn)類的繼承呢?
有如下2個構造函數(shù):
function PeopleClass(){
this.type = "人";
};
PeopleClass.ptototype = {
getType:function(){
alert("這是一個人");
}
};
function StudentClass(name,sex){
this.name = name;
this.sex = sex;
};
如何讓『學生』對象來繼承『人』對象呢?可使用apply方法將父對象的構造函數(shù)綁定在子對象上,代碼如下:
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的屬性『人』。
而方法的繼承,只要循環(huán)使用父對象的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中繼承的實現(xiàn)。
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。
更多關于JavaScript相關內(nèi)容感興趣的讀者可查看本站專題:《javascript面向對象入門教程》、《JavaScript錯誤與調試技巧總結》、《JavaScript數(shù)據(jù)結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數(shù)學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
相關文章
如何用uni-app實現(xiàn)頂部導航欄顯示按鈕和搜索框
本文介紹了如何用uni-app實現(xiàn)頂部導航欄顯示按鈕和搜索框,感興趣的同學,可以參考下,并且試驗一下。2021-06-06
用javascript讀取xml文件讀取節(jié)點數(shù)據(jù)
這篇文章主要介紹了用javascript讀取xml文件讀取節(jié)點數(shù)據(jù)的具體實現(xiàn),需要的朋友可以參考下2014-08-08
js 能實現(xiàn)監(jiān)聽F5頁面刷新子iframe 而父頁面不刷新的方法
下面小編就為大家?guī)硪黄猨s 能實現(xiàn)監(jiān)聽F5頁面刷新子iframe 而父頁面不刷新的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11

