当代码在解释过程中被分解为称为“令牌”的元素时,那些无法分类的被标记为“非法”。此错误也可能由于流氓字符或放错位置的符号而发生。
虽然您的代码可能看起来很简单,但称为零宽度空格字符 (ZWSP) 的不可见 Unicode 字符可能是潜伏在分号之后。该字符可能会导致 Unexpected token ILLEGAL JavaScript 语法错误。
像 jsfiddle 这样的工具经常引入 ZWSP 来控制自动换行。虽然较新版本的 jsfiddle 和 Chrome 开发者工具已经解决了这个问题,但仍然值得检查一下。
要验证 ZWSP 是否存在,请使用显示不可见的编辑器字符(例如 Vim)。 jsbin 和 CodePen.io 等在线调试工具也会将 ZWSP 突出显示为红点。
ZWSP 还会导致:
ECMAScript 规范将类似字符(U 200C 和 U 200D)列为某些特定范围之外的有效 IdentifierParts上下文。然而,U 200B 并未明确提及。实现将其视为意外标记,导致语法错误。
以上是尽管代码明显正确,为什么我会收到'意外令牌非法”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!