(1)、escape一般用来转义,但是基于不能转义“+”号形如:http://domain?name=xx+xx;
所以对于url的转义不建议采用escape.
并且超过255的字符采用unicode的形式进行编码%uxxxx
+号在服务器会被当作空格 表单提交时,空格符浏览器转成+ 分不清是输入的+还是空格
(2)、encodeURI,与encodeURIComponent编码成utf-8的字符
encodeURI整体uri进行编码参数含有中文encodeURI("http://aa/aa?aa=ee&a=中国");
encodeURIComponent不能用来对整体uri编码,因为会对“/”,“?”,":","="进行编码,传到服务器后将得不到正确的资源访问。
escape不编码字符有69个:*,+,-,.,/,@,_,0-9,a-z,A-Z
encodeURI不编码字符有82个:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z
encodeURIComponent不编码字符有71个:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z