一尘不染

ES6类多重继承

javascript

我已经在BabelJS和MDN(根本没有任何信息)上完成了大部分研究工作,但是请随时告诉我是否在寻找有关ES6Spec的更多信息时不够谨慎。

我想知道ES6是否以与其他鸭子类型语言相同的方式支持多重继承。例如,我可以做类似的事情:

class Example extends ClassOne, ClassTwo {
    constructor() {
    }
}

将多个类别扩展到新类别?如果是这样,相对于ClassOne,解释器会更喜欢ClassTwo的方法/属性吗?


阅读 655

收藏
2020-05-01

共1个答案

一尘不染

一个对象只能有一个原型。通过创建一个父对象作为两个父原型的组合,可以完成从两个类的继承。

子类化的语法使得在声明中可以做到这一点,因为extends子句的右侧可以是任何表达式。因此,您可以编写一个根据喜欢的条件组合原型的函数,然后在类声明中调用该函数。

2020-05-01