在另一个对象的构造函数中创建新的 ES6 对象失败

麦克马卡纳

编辑这个问题不同于如何扩展一个类而不必在 ES6 中使用超级?- 虽然答案是相关的,但这显然是一个不同的问题。它涉及到一个特定的错误,并且两大类参与PersonCreationEvent实际上并不相互继承。

我有两个 ES6 类,Person并且CreationEvent(CreationEvent继承自Event)。我希望new CreationEvent在我制作 a时制作 a new Person(因为这CreationEvent是个人帐户历史中事件的一部分)。

运行new CreationEvent()它自己的工作正常。但是我不能运行new Person()

即使使用简化版本的代码仍然失败:

class Event {
    constructor() {
        this.time = Date.now()
        this.tags = []
    }
}

class CreationEvent extends Event {
    constructor() {
        this.description = "Created"
    }
}

class Person {
    constructor(givenName, familyName, email) {
        var creationEvent = new CreationEvent()
    }
}  

运行new Person()返回

ReferenceError:在访问“this”或从派生构造函数返回之前,必须在派生类中调用超级构造函数

如何在另一个对象的构造函数中创建一个新的 ES6 对象?

德威特

您需要super()CreationEvent类中调用因为它扩展了Event类并且需要初始化。像这样:

class CreationEvent extends Event {
    constructor() {
        super();

        this.description = "Created"
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在javascript es6类构造函数中声明一个对象

来自分类Dev

如何通过另一个对象数组过滤对象数组[ES6]

来自分类Dev

将 ES6 对象的方法从一个对象动态附加到另一个对象

来自分类Dev

当我通过内联函数调用将对象返回到 ES6/Reactjs 中的另一个对象时出错

来自分类Dev

Kotlin使用另一个对象作为默认构造函数参数创建新对象

来自分类Dev

对象集 ecmascript 6 (es6)

来自分类Dev

当文件导入另一个命名导出时,ES6 动态导入失败

来自分类Dev

ES6中的条件对象分配

来自分类Dev

迭代es6中的对象并返回新对象

来自分类Dev

ES6速记对象键检查

来自分类Dev

ES6 / Bluebird的对象方法

来自分类Dev

链接JavaScript(ES6)代理对象

来自分类Dev

解构对象数组(ES6)

来自分类Dev

对象es6的条件解构数组

来自分类Dev

对象销毁ES6类

来自分类Dev

链接JavaScript(ES6)代理对象

来自分类Dev

ES6 对象赋值简化

来自分类Dev

React/ES6 减少对象

来自分类Dev

Javascript 对象到 ES6 类

来自分类Dev

数组操作:合并对象 [ES6]

来自分类Dev

为什么Google Closure Compiler在扩展Date()的ES6对象上失败?

来自分类Dev

在不使用JavaScript中的Object.assign(ES6功能)的情况下从另一个对象进行扩展

来自分类Dev

给定一个对象数组,如何创建一个具有不同键名的新对象数组,同时省略不需要的数据(ES6 方式)?

来自分类Dev

在另一个构造函数中为对象数组调用构造函数

来自分类Dev

从ES6中的内联属性子集创建对象

来自分类Dev

在 JSON 对象中嵌入 ES6 箭头函数

来自分类Dev

如何在另一个对象的构造函数中声明和制作对象?

来自分类Dev

如何在另一个对象的构造函数中声明和制作对象?

来自分类Dev

将属性添加到通过在构造函数中调用另一个方法创建的位图对象

Related 相关文章

  1. 1

    如何在javascript es6类构造函数中声明一个对象

  2. 2

    如何通过另一个对象数组过滤对象数组[ES6]

  3. 3

    将 ES6 对象的方法从一个对象动态附加到另一个对象

  4. 4

    当我通过内联函数调用将对象返回到 ES6/Reactjs 中的另一个对象时出错

  5. 5

    Kotlin使用另一个对象作为默认构造函数参数创建新对象

  6. 6

    对象集 ecmascript 6 (es6)

  7. 7

    当文件导入另一个命名导出时,ES6 动态导入失败

  8. 8

    ES6中的条件对象分配

  9. 9

    迭代es6中的对象并返回新对象

  10. 10

    ES6速记对象键检查

  11. 11

    ES6 / Bluebird的对象方法

  12. 12

    链接JavaScript(ES6)代理对象

  13. 13

    解构对象数组(ES6)

  14. 14

    对象es6的条件解构数组

  15. 15

    对象销毁ES6类

  16. 16

    链接JavaScript(ES6)代理对象

  17. 17

    ES6 对象赋值简化

  18. 18

    React/ES6 减少对象

  19. 19

    Javascript 对象到 ES6 类

  20. 20

    数组操作:合并对象 [ES6]

  21. 21

    为什么Google Closure Compiler在扩展Date()的ES6对象上失败?

  22. 22

    在不使用JavaScript中的Object.assign(ES6功能)的情况下从另一个对象进行扩展

  23. 23

    给定一个对象数组,如何创建一个具有不同键名的新对象数组,同时省略不需要的数据(ES6 方式)?

  24. 24

    在另一个构造函数中为对象数组调用构造函数

  25. 25

    从ES6中的内联属性子集创建对象

  26. 26

    在 JSON 对象中嵌入 ES6 箭头函数

  27. 27

    如何在另一个对象的构造函数中声明和制作对象?

  28. 28

    如何在另一个对象的构造函数中声明和制作对象?

  29. 29

    将属性添加到通过在构造函数中调用另一个方法创建的位图对象

热门标签

归档