js类的继承定义与用法分析

本文实例讲述了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(); //[这是一个人]

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

以上是 js类的继承定义与用法分析 的全部内容, 来源链接: utcz.com/z/357412.html

回到顶部