该问题困扰我好久了。原书《JavaScript设计模式》,ISBN:9787115191281。代码在42页下方。书中写的extend函数如下:jsfunctionextend(subClass,superClass){varF=function(){};F.prototype=superClass.prototype;subClass.prototype=newF();subClass.prototype.constructor=subClass;subClass.superclass=superClass.prototype;if(superClass.prototype.constructor==Object.prototype.constructor){superClass.prototype.constructor=superClass;}}问题是最后3行这个if语句有什么用呢?书上说,即使父类是Object也可以正常继承,要怎么理解呢?整个extend函数中未对父类的prototype做改动,那么不加这个判断和修改会有什么错误么?
开满天机
噜噜哒
相关分类