JavaScript:为什么这种形式写的正则有的字符需要转义,有的不需要呢?

JavaScript016

JavaScript:为什么这种形式写的正则有的字符需要转义,有的不需要呢?,第1张

$是需要转义的

^也需要转义

*也是

为什么说不需要转义呢?

不转义的话$会被认为成结束标记,^会被认为是开始标记 或 与[]组成不包含标记,*表示成匹配0次或多次。

除非,除非啊,你用的是中文字符^$*。

不信?你自己写个小页面试试

先把你的json数据贴出来:

然后json数据使用JSON.parse()有浏览器是不兼容JSON这个对象的

解决方案需要加载JSON对象库的

所以暂时还是使用: eval("("+data+")")

json源数据字符有转义符应该是必须的,你要看解析出来后是否有多余的转义符