Short answer: No
Long answer: Noooooooooooooooooooooooooo
I don't know what you're getting at, but one way to get around the problem of escaping (etc) is use a trick that John Resig seems to like a lot. You include <script>
blocks in a page, but give them a "type" like "text/plain" to make sure that the browser doesn't hand them over to Javascript. Then use the text of the script block for whatever you like.
<script id='a_string' type='text/plain'>
Here is some stuff.
There might be some \escape sequences in it.
</script>
Then you can grab that with $('#a_string').text()
(or with getElementById
if you're not using jQuery or something like that).
edit: Here's John Resig's explanation about why dropping stuff into script blocks like that is a good idea:
Quick tip: Embedding scripts in your page that have a unknown content-type (such is the case here - the browser doesn't know how to execute a text/html script) are simply ignored by the browser - and by search engines and screenreaders. It's a perfect cloaking device for sneaking templates into your page. I like to use this technique for quick-and-dirty cases where I just need a little template or two on the page and want something light and fast.
Taken from this page: http://ejohn.org/blog/javascript-micro-templating/
Literal strings are available through the use of ES6 language features. Node.js v4.x now supports these and around 90% of the other ES6 additions as well.
Template literals (Template strings)
In JavaScript, string literals are known as template strings . And the syntax is pretty straightforward.
This will work as long as you don't throw a \\x
into the string!
var str = String.raw`\\whatever\\this\\is`; console.log(str);
只是逃避逃避
var myCrazyString = "\\yes\\we\\have\\no\\bananas"
I've got one solution to this ;)
function literalString(regex) { return ('' + regex).slice(1, -1); }; O.innerHTML = literalString(/\\whatever\\this\\is/);
<pre id=O>
You basically convert a regex to a string and remove the first and last characters.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.