根据装饰器规范,以下语法“customObject.decoratorFunction”是否有效

Is the following syntax `customObject.decoratorFunction` valid according to the decorator spec

我正在查看 ES decorator proposal,它使用语法定义了以下语法:

Decorator:
    @ DecoratorMemberExpression
    @ DecoratorCallExpression

DecoratorMemberExpression:
    IdentifierReference
    DecoratorMemberExpression . IdentifierName

DecoratorCallExpression:
    DecoratorMemberExpression Arguments

任何人都可以确认我理解语法正确并且以下表达式根据规范有效:

@decoratorFunction                       // IdentifierReference
@customObject.decoratorFunction          // IdentifierReference . IdentifierName
@decoratorFunction(...)                  // IdentifierReference Arguments
@customObject.decoratorFunction(...)     // IdentifierReference . IdentifierName Arguments

没错,DecoratorMemberExpression 允许对 属性 访问器使用点表示法。

这意味着这是有效的:

@customObject.decoratorFunction(...)

虽然这不是:

@customObject['decoratorFunction'](...)