JSA 压缩JS时的常见问题
1。保留字滥用
如果你的脚本中存在某些保留字或者关键字属性甚至变量名,那么,对不起,您的脚本无法通过解析。
虽然大多数浏览器在这个时候会对你宽大处理,但是JSA不能,比如新浪编辑器里有一个float属性(其实那是错误写法,正确写法应该为styleFloat)
2。严格的正则语法
JSA使用的是Rhino语法解析器,在正则处理时,哪怕在[]号内,依然需要对全部特殊字符转义。否则可能会出错。
比如,如下表达式:
它在大多数浏览器上,都能通过。
但是Rhino解析器,则无法通过。
我粗略过了一下ECMA规范的语法说明,这一点应该算Rhino实现的bug。
?
- ClassAtomNoDash?::??
- ????SourceCharacter?but?not?one?of\?]?-??
- ????\?ClassEscape??