escape()函数,encodeURI()函数 , encodeURIComponent() 函数区别

来源:互联网 发布:淘宝网电脑登录不了 编辑:程序博客网 时间:2024/05/16 23:40

JavaScript中有三个可以对字符串编码的函数,分别是:>1>

 


3>

提示和注释
提示:请注意>

</script>输出:

http%3A//www.w3school.com.cn

%3F%21%3D%28%29%23%25%26

2>

document.write(encodeURI("http://www.w3school.com.cn/")+ "<br />")

document.write(encodeURI("http://www.w3school.com.cn/My>

</script>输出:

http://www.w3school.com.cn/

http://www.w3school.com.cn/My%20first/

,/?:@&=+$#

对整个URL进行编码,而URL的特定标识符不会被转码。

3>

document.write(encodeURIComponent("http://www.w3school.com.cn/"))

document.write("<br />")

document.write(encodeURIComponent("http://www.w3school.com.cn/p 1/"))

document.write("<br />")

document.write(encodeURIComponent(",/?:@&=+$#"))

</script输出:

http%3A%2F%2Fwww.w3school.com.cn
http%3A%2F%2Fwww.w3school.com.cn%2Fp%201%2F
%2C%2F%3F%3A%40%26%3D%2B%24%23
例2:<script>

<a>http://passport.baidu.com/?logout&aid=7&u='+encodeURIComponent("http://cang.baidu.com/bruce42")+'">退出</a>');</script>

对URL中的参数进行编码,因为参数也是一个URL,如果不编码会影响整个URL的跳转。


在java中可以用java.net.URLDecoder.decode(urlPath, "UTF-8"); 将url编码转换回来

0 0