es5.1标准给出的PrimaryExpression产生式为:
PrimaryExpression :
this
Identifier
Literal
ArrayLiteral
ObjectLiteral
( Expression )
包括了数组初始化和对象初始化,而《权威指南》则明确表述数组初始化和对象初始化不是PrimaryExpression。
应该是理解错了,没问题了!
Literal ::
NullLiteral
BooleanLiteral
NumericLiteral
StringLiteral
RegularExpressionLiteral
字面量的产生式居然没有包括数组和对象字面量!!!所以ArrayLiteral、ObjectLiteral 还是字面量,不是初始化,文档在组织上不清楚没有讲字面量而是讲了初始化,导致很容易误解!