Ecmascript 6 ECMAScript符号语法的含义?
我对如何正确阅读感到困惑Ecmascript 6 ECMAScript符号语法的含义?,ecmascript-6,ecmascript-next,Ecmascript 6,Ecmascript Next,我对如何正确阅读感到困惑 为什么IdentifierName是用identiername定义的 为什么在定义的中间有一个新的行< /强>? 怎么读这个符号 语法 IdentifierName :: IdentifierStart IdentifierName IdentifierPart 标识名:: 标识开始 IdentifierName IdentifierPart 这是一个递归定义,在语法符号中并不少见 IdentifierName由IdentifierSta
- 为什么
是用IdentifierName
定义的identiername
- 为什么在定义的中间有一个<强>新的行< /强>?
这是一个递归定义,在语法符号中并不少见
IdentifierName
由IdentifierStart
或IdentifierName IdentifierPart
组成。如果我们在第二个备选方案中再次展开IdentifierName
,我们将得到
IdentifierStart IdentifierPart
IdentifierName IdentifierPart IdentifierPart
等等
要以非正式的方式表达这一点:IdentifierName
由IdentifierStart
组成,后跟任意数量的IdentifierPart
s
从: 另一个例子是,语法定义:
ArgumentList:
AssignmentExpression
ArgumentList,AssignmentExpression
声明参数列表
可以表示单个赋值表达式
或参数列表
,后跟逗号,后跟赋值表达式
。ArgumentList
的这个定义是递归的,也就是说,它是根据自身定义的。结果是,参数列表
可能包含任何正数的参数,用逗号分隔,其中每个参数表达式都是赋值表达式
。这种非终结符的递归定义很常见
这是一个递归定义,在语法符号中并不少见
IdentifierName
由IdentifierStart
或IdentifierName IdentifierPart
组成。如果我们在第二个备选方案中再次展开IdentifierName
,我们将得到
IdentifierStart IdentifierPart
IdentifierName IdentifierPart IdentifierPart
等等
要以非正式的方式表达这一点:IdentifierName
由IdentifierStart
组成,后跟任意数量的IdentifierPart
s
从: 另一个例子是,语法定义:
ArgumentList:
AssignmentExpression
ArgumentList,AssignmentExpression
声明参数列表
可以表示单个赋值表达式
或参数列表
,后跟逗号,后跟赋值表达式
。ArgumentList
的这个定义是递归的,也就是说,它是根据自身定义的。结果是,参数列表
可能包含任何正数的参数,用逗号分隔,其中每个参数表达式都是赋值表达式
。这种非终结符的递归定义很常见
你的意思是我们得到了IdentifierStart IdentifierStart IdentifierName IdentifierPart IdentifierPart,对吗?不。我可能写得不够清楚:
IdentifierName IdentifierPart
扩展到IdentifierStart IdentifierPart
(IdentifierName->IdentifierStart
)或者到IdentifierName IdentifierPart IdentifierPart
(IdentifierName->IdentifierName IdentifierPart
)的。您的意思是我们得到IdentifierStart IdentifierStart IdentifierName IdentifierPart,是吗?没有。我可能写得不够清楚:IdentifierName IdentifierPart
扩展到IdentifierStart IdentifierPart
(IdentifierName->IdentifierStart
)或IdentifierName IdentifierPart
(IdentifierName->IdentifierName IdentifierPart
)。