在使用JavaScript显示消息或者传递字符数据的时候,经常会碰到数据中夹杂单引号(')或者双引号("),这种语句往往会造成JavaScript报错。对此一般采用/'或者/"的解决。
例如:
1
2
|
Alert( "this is test " message "!" ); Alert( 'this is test ' message '!' ); |
一般会改成以下语句
1
2
3
4
|
Alert( "this is test /" message/ "!" ); //或者 Alert( "this is test 'message'!" ); Alert( 'this is test /' message/ '!' ); |
以上如果只在脚本中使用或者没有太复杂的数据字符连接,则已经解决了这个问题。
但是如果存在比较复杂的数据字符连接的时候,特别是某些由服务器组合的JavaScript语句时候可以考虑将单引号(')和者双引号("),用转义序列(escape sequence )输出。
例如上面的语句可以转变成以下的格式:
1
2
|
Alert( "this is test /u0022message/u0022!" ); Alert( 'this is test /u0027message/u0027!' ); |
补充一些常用的编码
字符说明 Unicode 转义序列
长破折号 (—) /u2014
注册符号 (R) /u00AE
版权符号 (c) /u00A9
商标符号 (?) /u2122
欧元符号 (€) /u20AC
反斜杠 (/) /u005C
正斜杠 (/) /u002F
左大括号 ({) /u007B
右大括号 (}) /u007D
小于号 (<) /u003C
大于号 (>) /u003E
星号 (*) /u002A
& &
' '(/u0027)
" "(/u0022)
< <
> >