您现在的位置:首页 > 博客 > Javascript > 正文
encodeURI和encodeURIComponent的区别
http://www.bbnsc.com/      2022/12/15 13:17:13      来源:csdn博主      点击:


var test1="http://www.w3school.com.cn/My first/?uname=aa&&pwd=123456";

console.log(encodeURI(test1));

console.log(encodeURIComponent(test1));

var test2="http://www.w3school.com.cn/My first/#qpp";

console.log(encodeURI(test2));

console.log(encodeURIComponent(test2));

一、区别:


▲ encodeURI是对url中的查询字符串部分进行转义


▲ encodeURIComponent对整个url进行转义,包括空格、英文冒号、斜杠等


至于decodeURI和decodeURIComponent,只要知道decodeURI和encodeURI是互逆操作,decodeURIComponent和encodeURIComponent是互逆操作就可以了


二、应用:


1.如果是简单的http地址,如 http://www.w3school.com.cn/My first/?uname=张三&pwd=123456,使用encodeURI编码就行,这样浏览器拿到编码(utf8)后的地址就能正常打开页面(现在大多数浏览器都会自动进行编码,ie11还不行)


2.如果是比较复杂的http地址,如 http://www.w3school.com.cn/My first/?newUrl=http地址


需要通过url传地址,然后跳转到新的地址,那这个要传递的地址(http地址)需要使用encodeURIComponent进行编码



发表评论(0)
姓名
*
评论内容
*
验证码
*图片看不清?点击重新得到验证码