CoffeyLiu 2019-04-24
在使用JavaScript显示消息或者传递字符数据的时候,经常会碰到数据中夹杂单引号(')或者双引号("),这种语句往往会造成JavaScript报错。对此一般采用/'或者/"的解决。
例如:
Alert("this is test "message"!"); Alert('this is test 'message'!');
一般会改成以下语句
Alert("this is test /"message/"!"); //或者 Alert("this is test 'message'!"); Alert('this is test /'message/'!');
以上如果只在脚本中使用或者没有太复杂的数据字符连接,则已经解决了这个问题。
但是如果存在比较复杂的数据字符连接的时候,特别是某些由服务器组合的JavaScript语句时候可以考虑将单引号(')和者双引号("),用转义序列(escape sequence )输出。
例如上面的语句可以转变成以下的格式:
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)
< <
> >