如果评论是安全的,那么为什么不是`x = 0; x +/*cmt*/+;`或`var f/*cmt*/oo ='foo';`工作?

wwa*_*waw 3 javascript syntax comments

这个主题启发了这个问题.以下是代码示例.我正在寻找能够准确说明发生了什么的答案.

双方x = 0; x+/*cmt*/+;var f/*cmt*/oo = 'foo'; 产生语法错误,这使得在回答这个问题的错误.

Cez*_*cik 8

你打断了一个单词而不是句子.++和foo是单词.人们认为你不会打断那些.

即使空白是"安全的",你也不能将空格放在单词的中间.

  • @adlwalrus评论就像空白一样.看`x = 0; x +/*cmt*/+;`是一个错误,因为`x = 0; x + +;`是一个错误. (3认同)
  • Comment是与标识符,运算符和文字常量不同的*类型的标记,因此它类似于空格. (2认同)

Bas*_*tch 5

因为注释是在词法级别解析的,通常被视为空格.