博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript 实现继承的5种方式
阅读量:4640 次
发布时间:2019-06-09

本文共 575 字,大约阅读时间需要 1 分钟。

   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.采用混合模式实现继承  

 

转载于:https://www.cnblogs.com/lyn940208/p/6082999.html

你可能感兴趣的文章
ES6深入学习记录(一)class方法相关
查看>>
《BI项目笔记》用Excel2013连接和浏览OLAP多维数据集
查看>>
C语言对mysql数据库的操作
查看>>
SQL Server 数据库备份
查看>>
INNO SETUP 获得命令行参数
查看>>
Charles抓取https请求
查看>>
LAMP环境搭建
查看>>
C语言的变量的内存分配
查看>>
clientcontainerThrift Types
查看>>
链接全局变量再说BSS段的清理
查看>>
hdu 1728 逃离迷宫
查看>>
HTML5与CSS3权威指南之CSS3学习记录
查看>>
docker安装部署
查看>>
AVL树、splay树(伸展树)和红黑树比较
查看>>
多媒体音量条显示异常跳动
查看>>
运算符及题目(2017.1.8)
查看>>
React接入Sentry.js
查看>>
ssh自动分发密匙脚本样板
查看>>
转 小辉_Ray CORS(跨域资源共享)
查看>>
Linux安装postgresql
查看>>