我得到这个JavaScript错误在我的控制台:
未捕获SyntaxError:意外令牌非法
这是我的代码:
Var foo = 'bar';
正如你所看到的,这非常简单。它怎么会导致语法错误呢?
我得到这个JavaScript错误在我的控制台:
未捕获SyntaxError:意外令牌非法
这是我的代码:
Var foo = 'bar';
正如你所看到的,这非常简单。它怎么会导致语法错误呢?
当前回答
我在我的mac上也有同样的问题,发现这是因为mac正在用不合法的javascript字符替换标准引号。
为了解决这个问题,我不得不改变我的mac上的设置系统首选项=>键盘=>文本(选项卡)取消勾选使用智能引号和破折号(默认勾选)。
其他回答
以下是我的理由:
之前:
var path = "D:\xxx\util.s"
其中\u是一个转义,我通过使用Codepen的分析JS找到了它。
后:
var path = "D:\\xxx\\util.s"
错误被修正了
如果您从另一个文档(如PDF)复制代码到控制台并试图运行它,也可能会发生这种情况。
我试图从我正在阅读的Javascript书中运行一些示例代码,很惊讶它不能在控制台中运行。
显然,从PDF中复制会在代码中引入一些意想不到的、非法的、看不见的字符。
我也遇到了同样的问题,因为我在文本字符串中添加代码时按了enter键。
因为它是一个很长的文本字符串,我想看到它,而不必在我的文本编辑器中滚动,然而,按enter添加了一个不可见的字符字符串,这是非法的。我使用Sublime Text作为编辑器。
我在我的mac上也有同样的问题,发现这是因为mac正在用不合法的javascript字符替换标准引号。
为了解决这个问题,我不得不改变我的mac上的设置系统首选项=>键盘=>文本(选项卡)取消勾选使用智能引号和破折号(默认勾选)。
为什么要在代码中寻找这个问题?甚至,如果它是复制粘贴。
如果你能看到,在同步文件夹保存文件后到底发生了什么-你会在文件末尾看到类似*****的东西。这和你的代码一点关系都没有。
解决方案。
如果你在vagrant box中使用nginx -添加到服务器配置:
sendfile off;
如果你在vagrant box中使用apache -添加到服务器配置:
EnableSendfile Off;
问题来源:VirtualBox Bug