Javascript - 字符串中的脚本标记时出错

时间:2014-04-13 02:58:27

标签: javascript string

我有一个包含以下代码的页面:

<script>
window.str = '<script></script>';
</script>

这会导致错误:

  

未捕获的SyntaxError:意外的标记ILLEGAL

发生了什么?在控制台中输入相同的代码运行没有问题。 Here is a jsbin demonstrating the issue

2 个答案:

答案 0 :(得分:2)

当我使用/ \转义{{1}}时,错误就消失了。

http://jsbin.com/xugabolu/1/edit

答案 1 :(得分:1)

对此的黑客解决方法如下:

<script>
window.str = '<scr' + 'ipt></scri' + 'pt>';
</script>

通过这种方式,您可以使用所需的字符串,而不会混淆解析器。

或者,如果这是最终目标,请将其作为DOM元素插入。