码迷,mamicode.com
首页 > Web开发 > 详细

js如何实现类的继承

时间:2019-04-24 00:26:23      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:构造   函数实现   nbsp   image   方式   com   console   cal   实现继承   

方法一:借助构造函数实现继承

技术图片

这种方法的缺点:原型链上的东西并没有被继承。

 

方法二:借助原型链实现继承

技术图片

这种方法的缺点:改变了一个实例对象,另一个实例对象也跟着改变,因为s1.__proto__ === s2.__proto__。

 

方法三:组合方式

技术图片

这种方法的缺点:父类的构造方法执行了2次,分别在Parent3.call(this)和Child3.prototype = new Parent3()。

 

方法四:组合方式的优化1

技术图片

这种方法的缺点:无法区分实例是由谁创建的,console.log(s5.constructor)输出为Parent4,但实际上s5是由Child4创建的。

 

方法五:组合方式的优化2

技术图片

console.log(s7 instanceof Child5,s7 instanceof Parent5);输出true,true。

console.log(s7.constructor);输出为Child5。所以,第五种是比较完美的方法。

js如何实现类的继承

标签:构造   函数实现   nbsp   image   方式   com   console   cal   实现继承   

原文地址:https://www.cnblogs.com/yangdaren/p/10759868.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!