ES6知识整理(10)--class的继承
(这是es6的第10篇文章。说真的这样的总结之后虽然直观了许多,但是消耗的时间有点长,或许是知识比较复杂的原因吧)
有个A类,B类继承A类,那B类实例就可以使用A类实例的所以属性和方法。不包括静态属性和方法
super函数:只能用在子类中
B类继承与A类,取得父类的this。B类就可以在A类的基础上加入新的属性或方法了。
constructor中的super可以继承属性后添加新属性,子类的constructor中必须加super
方法中的super可以继承方法后继续执行下面的语句
所以结果:
这2种写法B类是一样的
instanceof 判断对象是否属于该类:
父对象a不属于子类B,子对象b属于父类A。
Object.getPrototypeOf():
得出B类是否继承于A类
使用时可以是函数,也可以对象
作为函数,用于子类声明this
作为对象时,子类方法中使用,用于调用父类方法
p是undefined,父类实例属性无法通过super对象直接调用,
f是1,父类实例方法可以通过super对象直接调用
如果属性在父类的原型对象上,那super对象可以取到:
x属性在A类.prototype上,所以super可以取到
super调用父类方法时,super绑定子类this:
super.f()时,f()是父类方法,但x已被子类改变,所以是2
静态方法中的super对象,进的是父类的静态方法
实例(原型对象)方法中的super对象,进的是父类的实例方法
而Object.setPrototypeOf的实现方法时这样的。
因此:
A类继承Object类:
A无继承:
子类的原型的原型,就是父类的原型
原生类(构造函数)的继承
以Image为例:
new子类实例后,结果:
一句:接纳自己才能真正做回自己。想让别人喜欢自己就要先自己喜欢自己。
----公众号:海瑞菌

ES6知识整理(10)--class的继承的更多相关文章
- ES6知识整理(4)--数组的扩展
最近工作比较忙,基本每天都会加班到很晚.处理一些客户端兼容问题以及提升用户体验的优化.也将近一周没更文了,现在继续es6的学习总结. 上篇回顾 ES6知识整理(三)--函数的扩展 扩展运算符 形式是3 ...
- ES6知识整理(1)--let和const命令
最近准备在业余空闲时间里一边学习ES6,一边整理相关知识.只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是正在的学到了... 那么现在开始 LINK START!(首先是第一讲,前 ...
- ES6知识整理(5)--对象的扩展
个人开这个公众号的初心是为了积累知识,因此并没有做什么推广,再说自己也不知道怎么推广,推广之后又能干些什么.已经将近10天没发文章了,虽然每天都加班,但也不会一点时间都没有,有时还是会懒癌发作不想学习 ...
- ES6知识整理(2)--变量的解构赋值
最近准备在业余空闲时间里一边学习ES6,一边整理相关知识.只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是真正的学到了... 上一篇是一个试水,现在接上. 变量提升 看了下朋友回复 ...
- ES6知识整理(3)--函数的扩展
只有整理过的学习才是有效的学习.也就是学习之后要使用和整理成文,才是真正的学到了... 最近上班有点忙的关系,于是文章更新会慢些.只有晚上加完班之后,空余时间才能学习整理.因此完成一篇也可能要几个晚上 ...
- ES6知识整理(9)--class的基本语法
(总结完知识点,出去滑板刷街) promise的catch 上一节promise中漏了一个知识点: promise对象可以使用catch来避免每个then中都加error判断,让错误时都进到catch ...
- ES6知识整理(8)--Promise对象
(关于promise,以前并不知道是什么,没这个概念.现在来学习总结下) promise含义 es6的异步编程解决方案.需要new新对象操作api. promise对象特点 有3中状态:pending ...
- ES6知识整理(7)--Set和Map数据结构
(文章会同步到博客园,技术类文章还是该让搜索引擎察觉比较好) Set构造函数 初始化一个值不重复的数组,适合做数组去重. 2种数组去重的方法: 这里再说下Array.from(),表示以一个类数组|| ...
- ES6知识整理(6)--Symbol函数
(文章会同步到博客园,技术类文章还是该让搜索引擎察觉比较好) symbol是js的第7种数据类型: 7种分别是:undefined.null.boolean(布尔).string(字符串).numbe ...
随机推荐
- Nginx Log日志统计分析常用命令
IP相关统计 统计IP访问量(独立ip访问数量) awk '{print $1}' access.log | sort -n | uniq | wc -l 查看某一时间段的IP访问量(4-5点) gr ...
- 如何学Python
如何学习Python? Python上手很容易, 基本有其他语言编程经验的人可以在1周内学会Python最基本的内容.它们包括:1.常用内置类型(int, float, bool, bytes, st ...
- easyui combobox 动态加载数据C#
<script type="text/javascript" src="Scripts/jquery-1.8.2.min.js"></scri ...
- 判断一个url是否是图片
public bool RemoteFileExists(string fileUrl) { bool result = false;//下载结果 WebResponse response = nul ...
- 虚拟机 liunx系统以 root 身份登录权限
开启虚拟机 打开终端开启root账户 :sudo passwd -u root 输入当前用户的密码 为root账户设置密码:sudo passwd root 设置root密码,输入两次 测试r ...
- Ecshop表结构 order_info
CREATE TABLE IF NOT EXISTS `ecs_order_info` ( `order_id` mediumint(8) unsigned NOT NULL AUTO_INCREM ...
- mongodb中直接根据某个字段更新另外一个字段值
表:tblCard 要更新的字段:tPAFlow 值字段: pFlow 过滤 条件:{"lCycle":2} db.tblCard.find({"lCycle" ...
- html5-颜色的表示
div{width: 100%;height: 100px;}body{background: url(../pic/2.png);}/*#div1{background: #ff0000;}#div ...
- [转][LoadRunner]LR性能测试结果样例分析
LR性能测试结果样例分析 测试结果分析 LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要.并发数.平均事务响应时间.每秒点击数.业务成功率.系统资源.网页细分图.Web服务器资源 ...
- iview的table中点击Icon弹Poptip,render函数的写法
render: (h, params) => { return h('div', [ h('div', [ h('Poptip', { props: { confirm: true, trans ...