Script tag in JavaScript string [duplicate]

匿名 (未验证) 提交于 2019-12-03 00:46:02

问题:

This question already has an answer here:

I am encountering an issue where having a ending script tag inside a quoted string in JavaScript, and it is killing the script. I assume this is not expected behaviour. An example of this can be seen here: http://jsbin.com/oqepe/edit

My test case browser for the interested: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.4) Gecko/20091028 Ubuntu/9.10 (karmic) Firefox/3.5.4.

回答1:

What happens?

The browser HTML parser will see the within the string and it will interpret it as the end of the script element.

Look at the syntax coloring of this example:

 bar.....';  

Note that the word bar is being treated as text content outside of the script element...

A commonly used technique is to use the concatenation operator:

var test = '...... '+'ipt>......'; 


回答2:

You need to escape it, else it will be a part of the HTML.

var test = 'what the hell... \ \

why?!?!?!\';



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!