let person = {getGreeting () {return 'Hello';}};let dog = {getGreeting () {return 'woof';}};// let friend = {//     getGreeting () {//         return Object.getPrototypeOf(this).getGreeting.call(this) + ', hi';//     }// };// ES 6 引入了 super 关键字,super 指向当前对象的原型对象,实际上也就是 Object.getPrototypeOf(this) 的值,于是,上面的代码可以简化成如下形式:let friend = {getGreeting () {return super.getGreeting() + ', hi';}};// 使用 setPrototypeOf() 方法将 friend 对象的原型对象修改成 personObject.setPrototypeOf(friend, person);console.log(friend.getGreeting());  // 'Hello'console.log(Object.getPrototypeOf(friend) === person);  // true// 使用 setPrototypeOf() 方法将 friend 对象的原型对象修改成 dogObject.setPrototypeOf(friend, dog);console.log(friend.getGreeting());  // 'Hello'console.log(Object.getPrototypeOf(friend) === dog);  // true

ES6-使用 super 关键字访问原型对象相关推荐

  1. ES6的 super 关键字

    Class之间可以通过extends关键字实现继承,这比ES5的通过修改原型链实现继承,要清晰和方便很多. 子类必须在constructor方法中调用super方法,否则新建实例时会报错. 这是因为子 ...

  2. ES6 (二十二)Class 的继承、extends关键字、super 关键字(函数调用(constructor)、对象(父类原型对象))、原型对象(原型链)、Mixin 模式

    ES6 (二十二)Class 的继承.extends关键字.super 关键字(函数调用(constructor).对象(父类原型对象)).原型对象(原型链).Mixin 模式 文章目录 ES6 (二 ...

  3. es6 super 关键字

    super 关键字 我们知道,this关键字总是指向函数所在的当前对象,ES6 又新增了另一个类似的关键字super,指向当前对象的原型对象. const proto = { foo: 'hello' ...

  4. Java-Day12 面向对象的三大特征之封装、继承,单例模式(饿汉式、懒汉式)、方法重写 (覆盖)、注解 (annotation)、super关键字、对象的创建流程超详细

    目录 1. 面向对象的三大特征之封装 1.1 封装的含义 1.2 封装的目的 1.3 封装的优点 1.4 封装的实现过程 1.5 拓展知识:JavaBean 2. 面向对象的三大特征之继承 2.1 继 ...

  5. java super父类的父类_java super关键字,super访问父类成员详解

    之情给大家介绍了一下super调用父类构造方法方面的内容,下面要接着给大家介绍的就是super访问父类成员方面的内容,分别对super调用成员属性以及super调用成员方法做了详细介绍. 在子类的成员 ...

  6. Java面向对象之继承,方法重写,super关键字,员工类系列继承题

    在程序中,如果想声明一个类继承另一个类,需要使用extends关键字. 格式: class 子类 extends 父类 {} 继承的好处 1.继承的出现提高了代码的复用性,提高软件开发效率. 2.继承 ...

  7. 1.4 super关键字详解

    由于子类不能继承父类的构造方法,因此,如果要调用父类的构造方法,可以使用 super 关键字.super 可以用来访问父类的构造方法.普通方法和属性. super 关键字的功能: 在子类的构造方法中显 ...

  8. c 子类对象 访问父类对象受保护成员_06-JavaSe面向对象

    一.static 1.它是一种修饰符 2.使用位置:它用来修饰成员变量和成员方法 static修饰成员变量,叫类变量: static修饰成员方法,叫类方法: 类成员=类变量+类方法 没有使用stati ...

  9. java super关键字简述

    java super关键字简述 super关键字访问父类属性,访问权限必须是允许的 super关键字访问父类属性,访问权限必须是允许的 当创建子类对象时,默认调用父类的无参构造方法,除非显式调用父类的 ...

最新文章

  1. Nat. Mach. Intell. | FFPred-GAN:“以假乱真“—基于GAN创建合成特征样本改进蛋白质功能预测...
  2. python3 paramiko实现ssh客户端
  3. OpenGL与OpenCV实现增强现实
  4. ospf hello时间和dead_深入理解OSPF协议----第二讲:OSPF报文类型
  5. json list格式_来来来,一文让你读懂Cocos Creator如何读写JSON文件
  6. Loj#3026-「ROIR 2018 Day1」管道监控【Trie,费用流】
  7. Exynos4412裸机开发——中断处理
  8. MySql 优化的 30 条建议
  9. 【搞事情】英文文档单词对比自动翻译
  10. Fleaphp函数用法举例
  11. 《21天学通C语言(第7版)》一2.6 课后研习
  12. Pytorch实现基于卷积神经网络的面部表情识别(详细步骤)
  13. ActiveMQ学习笔记(二十三)Comsumer高级特性2
  14. python中的pd是什么意思_python中pd的用法 python中列表的用法
  15. 集线器与网桥的原理和作用
  16. 关于恶意说说自动在QQ空间转发的机制
  17. Google Deepmind的自杀开关研究或缓解人工智能恐慌
  18. 总结python中列表、元组、字典、集合的共同点和不同点
  19. 【VSCode报错】 Error while fetching extensions : XHR failed
  20. 微信企业号接入JDK6和JDK7及JDK8加解密失败处理(Java)

热门文章

  1. MySQL 基础知识(基本架构、存储引擎差异)
  2. C++基于TCP和UDP的socket通信
  3. [转]Struts2.3.16.1+Hibernate4.3.4+Spring4.0.2 框架整合
  4. 学习动态性能表(19)--v$undostat
  5. hadoop Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out
  6. Mac OS X 遭遇并抵御 ARP 攻击
  7. blog error #include stream.h
  8. 拆分器SplitContainer控件
  9. __cdecl __fastcall与 __stdcall 调用约定
  10. 完美替代Mask RCNN!BlendMask:实例分割新标杆