为了账号安全,请及时绑定邮箱和手机立即绑定

js实现继承的最佳方式是什么

js实现继承的最佳方式是什么

紫衣仙女 2019-04-07 11:18:49
其它语言里用extends即可,但是js貌似没有原生的解决方案,导致很多框架都自己实现了一套extends方法。目前看到比较多的就是把父类的方法再拷贝(或者引用?)到子类中,这种做法效率高吗?业内的通行做法是?
查看完整描述

2 回答

?
www说

TA贡献1775条经验 获得超8个赞

没有规范的原因大概是我们要的东西不一样!我觉得是这样我就这样写,他觉得那样好就那样写。大家都在写适合自己的继承实现,下面的可以说是最基本的也是效率最高的继承。
if(typeofObject.create==='function'){
module.exports=functioninherits(ctor,superCtor){
ctor.super_=superCtor
ctor.prototype=Object.create(superCtor.prototype,{
constructor:{
value:ctor,
enumerable:false,
writable:true,
configurable:true
}
});
};
}else{
//oldschoolshimforoldbrowsers
module.exports=functioninherits(ctor,superCtor){
ctor.super_=superCtor
varTempCtor=function(){}
TempCtor.prototype=superCtor.prototype
ctor.prototype=newTempCtor()
ctor.prototype.constructor=ctor
}
}
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 245 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信