javascript - ES6类语法不是给我们提供了 "classical"继承吗?

标签 javascript inheritance prototypal-inheritance

据我了解,在原型(prototype)继承的情况下,对象通过原型(prototype)链链接在一起。继承是对某些其他事件对象(实例化)的“引用”。

与基于类的继承一样,类(模板)用于灌输继承。任何子类实例化都“拥有”父对象的实例。

但是Javascript怎么不使用ES6语法实现“经典”继承呢?使用 ES6 类语法,您所做的本质上是创建模板。在实例化一个对象时,每次都会创建一个单独的父对象实例。这不是经典传承吗?

最佳答案

不,ES6 class 语法不实现经典继承。类的方法仍然放置在 .prototype 对象上,该对象通过原型(prototype)继承链接到实例。

也没有发生“模板化”。属性不预先声明,实例的形状不固定。它们一直只是普通对象,它们的属性是在构造函数中创建的。

关于javascript - ES6类语法不是给我们提供了 "classical"继承吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56562947/

相关文章:

javascript - 未定义是否允许作为对象属性名称?

JavaScript 属性访问 : dot notation vs. 括号?

CSS Cascading 接管继承,如何解决?

javascript - 使用伪经典继承设置原型(prototype)属性

javascript - 使用 $http 刷新来自服务的数据时, Angular View 不更新

javascript - __proto__ 与 javascript 中的原型(prototype)继承

JavaScript 原型(prototype)属性 : Prototype based Inheritance

javascript - 同源政策似乎不起作用

python - 如何从 Python 中的子类调用父类的方法?

JavaScript For-each/For-in 循环改变元素类型