ES5 / ES6 的继承除了写法以外还有什么区别

简介: ES5 / ES6 的继承除了写法以外还有什么区别

ES5 的继承实质上是先创建子类的实例对象,然后再将父类的方法添加到 this 上(Parent.apply(this))

  • ES6 的继承机制完全不同,实质上是先创建父类的实例对象 this(所以必须先调用父类的 super()方法),然后再用子类的构造函数修改 this。
  • ES5 的继承时通过原型或构造函数机制来实现。
  • ES6 通过 class 关键字定义类,里面有构造方法,类之间通过 extends 关键字实现继承。
  • 子类必须在 constructor 方法中调用 super 方法,否则新建实例报错。因为子类没有自己的 this 对象,而是继承了父类的
    this 对象,然后对其进行加工。如果不调用 super 方法,子类得不到 this 对象。
  • 注意 super 关键字指代父类的实例,即父类的 this 对象。
  • 注意:在子类构造函数中,调用 super 后,才可使用 this 关键字,否则报错。function 声明会提升,但不会初始化赋值。Foo
    进入暂时性死区,类似于 let、const 声明变量


相关文章
|
3月前
|
数据采集 人工智能 自然语言处理
小白必看 OpenClaw 2.6.2 高频 Skill 技能使用教程
OpenClaw 2.6.2(小龙虾)重磅升级!推荐15个高实用性Skill技能,覆盖文件整理、办公自动化、浏览器操作、系统管理、内容处理五大场景。小白必开5大核心技能:文件自动分类、Office/WPS自动化、PDF全能处理、网页信息采集、系统状态检测与清理,指令一发,多任务并行完成,办公效率飙升!
|
3月前
|
人工智能 API 开发者
阿里云AI 通用节省计划是什么意思,如何使用,有哪些限制?一篇文章搞懂
阿里云AI通用节省计划是预付费折扣套餐,购后自动抵扣百炼平台主流AI模型API调用费用。包月5折、包季4.5折,入门10元起,支持通义千问、Kimi、GLM等阿里直供模型,无需配置,即买即用。(239字)
|
7月前
|
Java Maven 数据安全/隐私保护
Nexus仓库
本文介绍了Nexus Repository Manager OSS的Linux安装与配置全过程,涵盖JDK8环境搭建、Nexus下载解压、服务启动及浏览器访问。详细说明了匿名访问设置、用户登录与密码重置(含OrientDB数据库操作)、仓库类型(proxy、hosted、group)及创建方法。提供Maven、npm、Docker私仓配置方案,包括本地仓库迁移、命令行上传、Docker镜像部署与数据持久化策略,适用于构建企业级私服体系。(239字)
|
人工智能 Serverless 调度
突破地域限制,实现算力无限供给 —阿里云ACK One注册集群开启多地域Serverless算力调度
本文介绍了阿里云ACK One注册集群多地域Serverless算力调度解决方案,解决传统数据中心在AI时代面临的算力不足问题。方案通过分钟级接入、100%兼容Kubernetes操作及云上Serverless弹性,实现跨地域弹性算力供给,支持高并发请求与模型快速迭代。文中详细描述了快速接入步骤、指定地域调度及动态调度方法,并提供了相关代码示例。该方案助力企业实现AI推理服务的规模化部署,提升商业落地效率。
|
前端开发 Java easyexcel
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
1149 8
|
JavaScript 数据可视化 开发者
echart:所有类型的图
本文档介绍了基于 Vue 3 的 ECharts 基础代码示例,包括柱状图、折线图、饼状图、环状图、散点图和雷达图的配置和使用方法。每个图表类型都提供了详细的代码示例和配置说明,帮助开发者快速上手并实现各种图表展示效果。
757 0
|
Linux Shell KVM
Kali系统基于qemu虚拟化运行img镜像文件
QEMU是一个由Fabrice Bellard创建的开源虚拟化器,能在多种平台上运行,如x86、ARM、PowerPC。它支持硬件仿真和虚拟化,允许在宿主系统上运行不同架构和OS,如Windows、Linux。QEMU特点包括硬件仿真、虚拟化支持(与KVM配合)、磁盘和网络仿真、快照及回滚功能。此外,文档还展示了在Kali Linux中安装和配置QEMU的步骤,包括下载、内存设置、源更新、软件安装、创建桥接脚本以及启动和管理虚拟机。
1330 1
Kali系统基于qemu虚拟化运行img镜像文件
阿里巴巴开发手册“泰山”版它来了,1.4.0+终极版+阿里内部PPT
阿里的《Java开发手册》距离上次发布已经过去了 10 个月了,而这次发布也增加了很多干货内容,比如:新增 34 条规约,修改描述 90 处,其中错误码规则更是第一次提出完整的解决方案,发布日志如下图所示:
|
Linux C语言 C++
配置 Sublime Text4为 C++ 编辑器的方法
自定义在Terminus的终端中编译运行cpp文件: 在Tools->Build System->New Build System中新建编译文件,保存为CppTerminus.sublime-build,替换内容
692 0

热门文章

最新文章