JavaScript 特殊字符
插入特殊字符
反斜杠用来在文本字符串中插入省略号、换行符、引号和其他特殊字符。
请看下面的 JavaScript 代码:
"Vikings"
在 JavaScript 中,字符串使用单引号或者双引号来起始或者结束。这意味着上面的字符串将被截为:We are the so-called。
要解决这个问题,就必须把在 "Viking" 中的引号前面加上反斜杠 (\)。这样就可以把每个双引号转换为字面上的字符串。
\"Vikings\"
现在 JavaScript 就可以输出正确的文本字符串了:We are the so-called "Vikings" from the north。
这是另一个例子:
\&
上面的例子会产生以下输出:
You & me are singing!
下面的表格列出了其余的特殊字符,这些特殊字符都可以使用反斜杠来添加到文本字符串中:
代码 | 输出 |
\' | 单引号 |
\" | 双引号 |
\& | 和号 |
\\ | 反斜杠 |
\n | 换行符 |
\r | 回车符 |
\t | 制表符 |
\b | 退格符 |
\f | 换页符 |
JavaScript基础 输出含有双引号/单引号的字符串
code1:
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
5 <title></title>
6 <script type="text/javascript">
7 var str1 = '含有双引号的字符串""';
8 var str2 = "含有单引号的字符串''";
9 document.write(str1);
10 document.write(str2);
11 </script>
12 </head>
13 <body>
14
15 </body>
16 </html>
result1:
code2:
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
5 <title></title>
6 <script type="text/javascript">
7 var str0 = "\"";//转义字符,输出双引号
8 //在双引号包裹的字符串内输出双引号
9
10 var str1 = '\'';//使用转义字符,输出单引号
11
12 document.write(str0);
13 document.write(str1);
14 </script>
15 </head>
16 <body>
17
18 </body>
19 </html>
result2:
在一个网页中,对特殊字符的转义,就需要确认是属于JavaScript语法,还是html语法。
先看个JavaScript中双引号的用法:
<script type=”text/javascript”>
alert(“\”我来自亲亲宝宝wenhq.com\””);
</script>
在一个网页中的按钮,写onclick事件的处理代码:
<input value=”Test” type=”button””OK””);” />
IE提示出错后,再改为:
<input value=”Test” type=”button”OK\”);” />
结果还是出错。
这时,我就想不通了,虽然我知道最直接的解决方法是写成这样:
<input value=”” type=”button” />
但为什么javascript中的转义字符\没有效果了呢?
后来找到一段正常的代码:
<input value=”Test” type=”button” />
这时才理解,原来这时,还是归于HTML的管辖范围,所以转义字符应该使用HTML的,而不是javascript的。两个双引号的做法是vbScript的,\”这种做法则是javascript的,而HTML的,则是用",此外还可以使用:”、’。
下面列出各种表达方法:
<html>
<body>
<input value=”外双引号内双引号-错误” οnclick=”alert(“OK”);” /><br />
<input value=”外单引号内单引号-错误” οnclick=’alert(‘OK’);’ /><br />
<input value=”两个双引号-错误” οnclick=”alert(“”OK””);” /><br />
<input value=”两个单引号-错误” /><br />
<input value=”\+双引号-错误” οnclick=”alert(\”OK\”);” /><br />
<input value=”\+单引号-错误” /><br />
<input value=”外双引号内单引号-OK” type=”button” /><br />
<input value=”外单引号内双引号-OK” type=”button” οnclick=’alert(“OK”);’ /><br />
<input value=”外部不使用引号-OK” type=”button”(‘OK’);alert(“OK”); /><br />
<input value=”HTML转义字符"(& q u o t ;)-OK” οnclick=”alert("OK");” /><br />
<input value=”HTML转义字符'(& a p o s ;)-IE错误” οnclick=”alert('OK');” /><br />
<script type=”text/javascript”>
alert(“\”我来自亲亲宝宝wenhq.com\””);
</script>
</body>
</html>
在一个网页中,对特殊字符的转义,就需要确认是属于JavaScript语法,还是html语法。
先看个JavaScript中双引号的用法:
<script type=”text/javascript”>
alert(“\”我来自亲亲宝宝wenhq.com\””);
</script>
在一个网页中的按钮,写onclick事件的处理代码:
<input value=”Test” type=”button””OK””);” />
IE提示出错后,再改为:
<input value=”Test” type=”button”OK\”);” />
结果还是出错。
这时,我就想不通了,虽然我知道最直接的解决方法是写成这样:
<input value=”” type=”button” />
但为什么javascript中的转义字符\没有效果了呢?
后来找到一段正常的代码:
<input value=”Test” type=”button” />
这时才理解,原来这时,还是归于HTML的管辖范围,所以转义字符应该使用HTML的,而不是javascript的。两个双引号的做法是vbScript的,\”这种做法则是javascript的,而HTML的,则是用",此外还可以使用:”、’。
下面列出各种表达方法:
<html>
<body>
<input value=”外双引号内双引号-错误” οnclick=”alert(“OK”);” /><br />
<input value=”外单引号内单引号-错误” οnclick=’alert(‘OK’);’ /><br />
<input value=”两个双引号-错误” οnclick=”alert(“”OK””);” /><br />
<input value=”两个单引号-错误” /><br />
<input value=”\+双引号-错误” οnclick=”alert(\”OK\”);” /><br />
<input value=”\+单引号-错误” /><br />
<input value=”外双引号内单引号-OK” type=”button” /><br />
<input value=”外单引号内双引号-OK” type=”button” οnclick=’alert(“OK”);’ /><br />
<input value=”外部不使用引号-OK” type=”button”(‘OK’);alert(“OK”); /><br />
<input value=”HTML转义字符"(& q u o t ;)-OK” οnclick=”alert("OK");” /><br />
<input value=”HTML转义字符'(& a p o s ;)-IE错误” οnclick=”alert('OK');” /><br />
<script type=”text/javascript”>
alert(“\”我来自亲亲宝宝wenhq.com\””);
</script>
</body>
</html>