在深层互联网中,我遇到了像class A extends B with C { ... }这样的结构,我现在还没有链接,就像在扩展抽象类时使用类的宏一样。

这是标准吗? (我用谷歌搜索,只找到现在已删除的旧with,Chrome嵌入式控制台抛出错误)

最佳答案

这不是标准的。在Annex A.4 - Functions and Classes中,语法为

ClassDeclaration :
    class BindingIdentifier ClassTail
    [+Default] class ClassTail

ClassExpression :
    class BindingIdentifier ClassTail

ClassTail :
    ClassHeritage { ClassBody }

ClassHeritage :
    extends LeftHandSideExpression

因此,ClassTail是包含可选extends something和类主体的部分。并且该something必须是LeftHandSideExpression,其中没有任何with

09-20 05:00