您的位置:首页 > Web前端 > JavaScript

JS的继承是从一个对象原型向另一个对象原型的简单拷贝

2012-12-31 14:20 861 查看
JavaScript支持面向对象,但是其实现方式是通过简单的从一个对象原型向另一个对象原型的拷贝的方式来实现的。
实例如下:

var BaseCls={};

BaseCls.getName=function(){
return "base class";
}

var ChildCls = {};

ChildCls.getName = BaseCls.getName;

BaseCls.getName=function(){
return "base class changed";
}

alert(ChildCls.getName());

alert(BaseCls.getName());
ChildCls.getName = BaseCls.getName;是将BaseCls的getName的定义复制给ChildCls的getName函数,之后对BaseCls的getName的改变不会影响到ChildCls的getName函数。
同样,用prototype继承也是相同的效果:

var BaseCls={};

BaseCls.getName=function(){
return "base class";
}

function ChildCls(){

}

ChildCls.prototype.getName = BaseCls.getName;

BaseCls.getName=function(){
return "base class changed";
}

alert(new ChildCls().getName());

alert(BaseCls.getName());
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  JavaScript 继承 protot