2019-12-19 decodeURI与decodeURIComponent区别

  • 注:由于decode和encode是相对应的,以下用encode可以更明确的看出差别

encodeURI() 主要用于整个URI,例: http://es.cc/search?title=哇哈哈&tag=默认分类encodeURIComponent() 主要用于对URI中的某一段,例:title=哇哈哈&tag=默认分类

它们的主要区别在于,
encodeURI()不会对本身属于URI的特殊字符进行编码,例: ‘:’ ,'/', '@', '#', '?'等
encodeURIComponent()则会对它发现的任何非标准字符进行编码。

代码如下:

let uri="http://es.cc/search?title=哇哈哈&tag=默认分类";
console.log(encodeURI (uri));
// http://es.cc/search?title=%E5%93%87%E5%93%88%E5%93%88&tag=%E9%BB%98%E8%AE%A4%E5%88%86%E7%B1%BB
console.log(encodeURIComponent (uri));
// http%3A%2F%2Fes.cc%2Fsearch%3Ftitle%3D%E5%93%87%E5%93%88%E5%93%88%26tag%3D%E9%BB%98%E8%AE%A4%E5%88%86%E7%B1%BB

如此就他们的区别就很明显了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值