在我们写JAVAScript脚本时,可能会要HTML文档显示或使用某些特殊字符(例如:引号或斜线)。(例如:<img src="image5.jpg">)但是前面提过,声明一个字符串时,前后必须以引号括起来。如此一来,字符串当中引号可能会和标示字符串的引号搞混了,此时就要使用转义字符(Escape Character)。
JAVAScript使用以下八种转义字符。这些字符都是以一个反斜线(\)开始。当JAVAScript的解释器(Interpreter)看到反斜线时,就会特别注意,表现出程序员所要表达的意思。下表列出了JavaScript的转义序列以及它们所代表的字符。其中有两个转义序列是通用的,通过把Latin-1或Unicode字符编码表示为十六进制数,它们可以表示任意字符。例如,转义序列\xA9表示的是版权符号,它采用十六进制数A9表示Latin-1编码。同样的,\u表示的是由四位十六进制数指定的任意Unicode字符,如\u03c0表示的是字符π(圆周率)。注意,虽然ECMAScript
\& 和号 \t 横向跳到下一制表位置 |
举例:
|
说明: |
序 | 转义字符 | 使用说明 |
0 | NUL 字符(\u0000) | |
1 | \b | 后退一格(Backspace)退格符(\u0008) |
2 | \f | Feed)(\u000C) |
3 | \n | Line)(\u000A) |
4 | \r | \u000D) |
5 | \t | 制表(Tab)水平制表符(\u0009) |
6 | \' | 单引号(\u0027) |
7 | \" | 双引号(\u0022) |
8 | \\ | 反斜线(Backslash)(\u005C) |
9 | \v | 垂直制表符(\u000B) |
10 | \xNN | 由两位十六进制数值NN指定的Latin-1字符 |
11 | \uNNNNN | NNNN指定的Unicode字符 |
12 | \NNN | 由一位到三位八进制数(1到377)指定的Latin-1字符。 ECMAScript v3不支持,不要使用这种转义序列 |
请看下面的 JavaScript 代码:
"Vikings"
在 JavaScript 中,字符串使用单引号或者双引号来起始或者结束。这意味着上面的字符串将被截为:We are the so-called。
要解决这个问题,就必须把在 "Viking" 中的引号前面加上反斜杠 (\)。这样就可以把每个双引号转换为字面上的字符串。
\"Vikings\"
现在 JavaScript 就可以输出正确的文本字符串了:We are the so-called "Vikings" from the north。
这是另一个例子:
\&
上面的例子会产生以下输出:
You & me are singing!