这也许是我第一次使用do...while
循环。我不知道这是怎么回事:
const randomLetter
do {
randomLetter = String.fromCharCode(97 + 26 * Math.random() | 0)
} while (state.lettersFound.includes(randomLetter))
在do {
行,我遇到一些unexpected token
语法错误。为什么?
答案 0 :(得分:0)
syntax for declaring a constant是:
const
标识符 =
初始化器
解析器希望在标识符(=
)后看到等号randomLetter
,但是却意外地看到了关键字do
。
因此,错误消息和错误位置正确:意外的令牌是关键字do
,并且错误发生在令牌do
。
注意:根据解析器的不同,错误消息或多或少会有所帮助,例如我在Node.js 13.1.0 / V8 7.8中得到的:
Thrown:
const randomLetter
^^^^^^^^^^^^
SyntaxError: Missing initializer in const declaration
注意:这实际上与do-loops无关:不是等号=
的任何内容都会触发类似的语法错误。
注意:vue.js 不可能与此有关,因为显然这是一种语法/解析错误,而ECMAScript(就像几乎所有语言,当然也包括所有主流语言)都没有允许库更改语言的基本语法。