3

我已经看到与以下类似的问题,但我已经彻底检查了以下问题。我在 Firefox 的控制台中收到“未终止的字符串文字”错误。

我有一个 HTML 页面,如下所示:

<HTML>
<HEAD>

<SCRIPT type="text/JavaScript">
var test = "</script>";
</SCRIPT>
</HEAD>

<BODY>
</BODY>

</HTML>

据我所知,这个 JavaScript 应该没有什么无效的,因为我不相信 '<'、'/' 或 '>' 在用作 JavaScript 字符串变量的一部分时需要转义。事实上,以下工作:

var test = "</>";

所以,我想知道我的小脚本是如何让浏览器跳闸的,或者我该如何解决它?

4

1 回答 1

5

它不是你必须担心它的 html 的 js。
html 解析器将您的"</script>"字符串读取为结束脚本标签的结束标签,结束脚本。所以js解释器看到

var test = "

为避免这种情况,您可以使用逃生技巧

<SCRIPT type="text/JavaScript">
var test = "<\/script>";
</SCRIPT>
于 2013-06-07T23:36:59.970 回答