在URI的路径优化中,很多时候会将URL中出现的中文进行特殊处理。PHP中使用的就是urlencode和urldecode,而在JS中也同样有功能相似的JS全局函数:
encodeURI和decodeURI
encodeURIComponent和decodeURIComponent
那么encodeURI和encodeURIComponent分别是在什么时候使用呢?这就要从他处理之后的区别来看他们的应用时机:
var url = 'http://www.pekingpiao.com/kw/系统';
现在使用encodeURI和encodeURIComponent处理一下
document.write(encodeURI(url));
//http://pekingpiao.com/kw/%E7%B3%BB%E7%BB%9F
document.write(encodeURIComponent(url)); //http%3A%2F%2Fpekingpiao.com%2Fkw%2F%E7%B3%BB%E7%BB%9F
从以上处理完的结果分析,encodeURI()不会将路径中的’/‘进行编码,能够将传递的参数正常的传给下一个文件;而encodeURIComponent()会将url中的’/‘进行编码,将url完全的当成了一个整体,编码完成后也难以区分,所以不能传递参数了。现在应该明白这两组函数的区别了,所以就可以根据自己的实际情况进行取舍了@pekingpiao.com
相关文章:
,请先登录查看所有评论- echo.js配合ajax的使用 2017-05-09
- lazyload之echo.js 2017-05-09
- navigator.appName的测试 2015-05-17
- zepto.js和jquery.js的优劣 2015-02-04
- 在JS中调用PHP变量 2015-01-07
网友评论已关闭