您好,匿名用户

ECMA-262文档一些定义读不懂(Let and Const Declarations)

0 投票

在查看ECMA语言规范,发现他的一些定义不知道怎么理解,希望有经验的能启发一下

原文中这样写道:

Syntax

LexicalDeclaration[In, Yield, Await]:
    LetOrConst BindingList[?In, ?Yield, ?Await];

LetOrConst:
    let
    const

BindingList[In, Yield, Await]:
    LexicalBinding[?In, ?Yield, ?Await]
    BindingList[?In, ?Yield, ?Await],LexicalBinding[?In, ?Yield, ?Await]

LexicalBinding[In, Yield, Await]:
    BindingIdentifier[?Yield, ?Await]Initializer[?In, ?Yield, ?Await]opt
    BindingPattern[?Yield, ?Await]Initializer[?In, ?Yield, ?Await]

不懂后面的中括号是什么意思

BindingList : 下面是他的子集吗? 怎么还有BindingList自身...

用户头像 提问 5月24日 @ Morgana 中士 (1,152 威望)
分享到:

1个回答

0 投票
 
最佳答案

中括号是一种减少键盘磨损的缩写方式,例如1:

StatementList[Return]:
   ReturnStatement
   ExpressionStatement

是下面的缩写

StatementList:
   ReturnStatement
   ExpressionStatement
StatementList_Return:
   ReturnStatement
   ExpressionStatement

例如2:

StatementList[Return, In]:
   ReturnStatement
   ExpressionStatement

是下面的缩写

StatementList:
   ReturnStatement
   ExpressionStatement
StatementList_Return:
   ReturnStatement
   ExpressionStatement
StatementList_In:
   ReturnStatement
   ExpressionStatement
StatementList_Return_In:
   ReturnStatement
   ExpressionStatement

规范都是语法定义,不是 API 文档,看规范原文需要一定编译原理基础。如果题主就是为了看语法,当我没说。
类似问题

用户头像 回复 5月24日 @ Rengar 中士 (1,221 威望)
选中 5月12日 @Morgana
提一个问题:

相关问题

0 投票
1 回复 117 阅读
用户头像 提问 2017年 5月5日 @ 河蟹 中士 (1,371 威望)
0 投票
0 回复 150 阅读
0 投票
1 回复 113 阅读
用户头像 提问 2017年 3月21日 @ Elise 中士 (1,283 威望)
0 投票
1 回复 421 阅读
0 投票
1 回复 5 阅读
用户头像 提问 5月10日 @ Pantheon 中士 (1,263 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

IT技术交流群 - 随意问
欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...