其它语言里用extends即可,但是js貌似没有原生的解决方案,导致很多框架都自己实现了一套extends方法。目前看到比较多的就是把父类的方法再拷贝(或者引用?)到子类中,这种做法效率高吗?业内的通行做法是?
2 回答
www说
TA贡献1775条经验 获得超8个赞
没有规范的原因大概是我们要的东西不一样!我觉得是这样我就这样写,他觉得那样好就那样写。大家都在写适合自己的继承实现,下面的可以说是最基本的也是效率最高的继承。if(typeofObject.create==='function'){module.exports=functioninherits(ctor,superCtor){ctor.super_=superCtorctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:false,writable:true,configurable:true}});};}else{//oldschoolshimforoldbrowsersmodule.exports=functioninherits(ctor,superCtor){ctor.super_=superCtorvarTempCtor=function(){}TempCtor.prototype=superCtor.prototypector.prototype=newTempCtor()ctor.prototype.constructor=ctor}}
添加回答
举报
0/150
提交
取消