JavaScript中的对象继承关系

(编辑:jimmy 日期: 2024/10/3 浏览:2)

我们今天就来看一下继承中的类继承以及类继承和原型继承的混用,所谓类继承,就是使用call或者apply方法来进行冒充继承:

function Desk(size,height){
this.size=size;
this.height=height;
}
function MJDesk(size,height){
Desk.call(this,size,height);//这种就叫类继承.
}
var mj = new MJDesk(10,123);

  像上面这种就是我们要使用的类继承,用这种继承,我们可以访问类中的方法和属性,但是无法访问父类原型中的方法和属性,这种方法别名冒充继承,顾名思义,就是一个假的继承,所以,假的当然不能继承真的原型,所以,类继承的缺点也是很明显的,当我们使用的多的时候,就会造成内存的浪费.由此,我们就出现了类继承和原型继承混合使用的方法:

function Desk(size,height){
this.size=size;
this.height=height;
}
function MJDesk(size,height){
Desk.call(this,size,height);//这种就叫类继承.
}
MJDesk.prototype=new Desk();//原型继承
var mj = new MJDesk(12,12);
//当然此处的原型继承用我们上一章讲的使用一个空函数进行继承的方式更好.

当然,我们现在使用最多的就是这种二者混合用的方式了!

以上所述是小编给大家介绍的JavaScript中的对象继承关系,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。