未捕获的语法错误:意外的标记ILLEGAL-一个简单的字符串语法错误

Uncaught SyntaxError: Unexpected token ILLEGAL - A simple string syntactically wrong

本文关键字:错误 语法 一个 字符串 简单 意外 ILLEGAL-      更新时间:2023-09-26

为什么这个看似简单的字符串变量在语法上是错误的?

var str = "<script>functionName()</script>";

我得到以下错误

未捕获的SyntaxError:意外的令牌非法

这是小提琴

打开控制台并尝试放入字符串

var str = "<script>functionName()</script>";

没有语法错误,一切正常。

当你将代码嵌入到脚本标签中时,就像一样

<script>
// code here
</script>

在JSFiddle中,如果你检查错误,你会看到类似的东西

<script type='text/javascript'>//<![CDATA[
window.onload=function(){
var str = "<script>functionName()</script>";
}//]]> 
</script>

当您将字符串嵌入到<script>标记中时,浏览器不允许在字符串中使用</字符。

因此,您需要使用' 来逃离它

这应该可以工作。添加了一个反斜杠"</script>"

<script>
    var str = "<script>functionName()<'/script>";
</script>
相关文章: