是否需要在经典继承中更改子类的“原型.构造函数”
Is it required to change the "prototype.constructor" of sub class in classical inheritance
我一直在阅读Mozilla JS指南中的以下文章。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create#Examples
在给出的 Object.create 经典继承示例中,我无法弄清楚作者为什么添加以下行(第 # 21 行):
Rectangle.prototype.constructor = Rectangle;
经典继承需要吗?请证明您的答案。
从 ECMAScript-262 版本 5.1 开始,构造函数属性仅在函数对象上设置,请参阅 13.2 创建函数对象(步骤 17)
它永远不会被语言本身阅读或使用。
特别
obj instanceof C
不使用构造函数属性,也不使用构造函数属性
C.prototype.isPrototypeOf(obj)
因此,如果您不设计它,并且不使用使用它的框架,则可以忽略构造函数属性。
有关进一步阅读,请参阅"构造函数"属性是怎么回事
相关文章:
- 是否可以从父类访问子类的属性
- 子类访问父类's闭包变量
- Javascript关键字搜索子类Div值
- 如何通过Prototype或jquery移除子类的父类基类
- JavaScript数组的子类化破坏了快速枚举
- 可以“;超级“;可以在子类的方法内部使用,在不直接引用的情况下调用相应的超类方法
- 具有子类的构造函数中的Object.freeze
- JavaScript—父类和子类/对象的此问题
- Google Maps Javascript v3 自定义控件子类化标准控件
- 是否需要在经典继承中更改子类的“原型.构造函数”
- 在 Javascript 中创建子类时,为什么要分配原型字段
- 在JavaScript中,如何使用单个“”从子类中的父类继承;.原型;块
- 从父类访问子类原型
- Javascript:从返回超类实例的函数中设置子类原型的好处
- node.js中的继承问题:试图覆盖子类的原型时出现赋值错误
- JavaScript中的原型/子类
- 为什么原型继承子类是另一个子类的实例?
- javascript中的原型属性是如何从父类委托给子类的
- 子类三.使用原型继承的网格
- 在JavaScript中声明一个新的子类作为原型方法是可以的吗?