码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript 实现继承的5种方式

时间:2016-11-20 19:21:07      阅读:428      评论:0      收藏:0      [点我收藏+]

标签:注意   apply   面向对象   介绍   引用   this关键字   构造   script   类的构造函数   

   js是一个面向对象的语言,所以具备一些面向对象的方式----------例如继承。接下来介绍5种js的继承方式.注意:js 中的函数其实是对象,函数名是对 Function 对象的引用。

1.采用call方法改变函数上下文实现继承,原理是改变函数内部的函数上下文this,使它指向传入函数的具体对象

    具体代码如下

   技术分享

   Father.call(child,child.getName) 的意思就是使用 Father对象代替child对象,child中就有 Father的所有属性和方法了,child对象就能够直接调用 Father的方法以及属性了.

2.采用apply方法改变函数上下文实现继承,原理是改变函数内部的函数上下文this,使它指向传入函数的具体对象

技术分享

3.采用原型链的方式实现继承,实现原理是:使子类原型对象指向父类的实例以实现继承,即重写类的原型

 技术分享

这样子类就具有了父类的属性和方法,完美继承

4.使用对象冒充实现继承(该种实现方式可以实现多继承)实现原理:让父类的构造函数成为子类的方法,然后调用该子类的方法,通过this关键字给所有的属性和方法赋值

 技术分享       

    子类具有的方法和属性有 技术分享  可以看出子类继承了父类的方法和属性

 

 

5.采用混合模式实现继承  

技术分享

 

JavaScript 实现继承的5种方式

标签:注意   apply   面向对象   介绍   引用   this关键字   构造   script   类的构造函数   

原文地址:http://www.cnblogs.com/lyn940208/p/6082999.html

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