浏览器URL中 encodeURIComponent()加密和decodeURIComponent()解码

Posted taohuaya

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浏览器URL中 encodeURIComponent()加密和decodeURIComponent()解码相关的知识,希望对你有一定的参考价值。

encodeURIComponent()加密

定义和用法

encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。

语法

encodeURIComponent(URIstring)
参数描述
URIstring 必需。一个字符串,含有 URI 组件或其他要编码的文本。

返回值

URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。

说明

该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ‘ ( ) 。

其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。

 

使用方法:

document.write(encodeURIComponent("http://www.w3school.com.cn")+ "<br />")
document.write(encodeURIComponent("http://www.w3school.com.cn/My first/")+ "<br />")
document.write(encodeURIComponent(",/?:@&=+$#"))

输出结果:

http%3A%2F%2Fwww.w3school.com.cn
http%3A%2F%2Fwww.w3school.com.cn%2FMy%20first%2F
%2C%2F%3F%3A%40%26%3D%2B%24%23

---------------------------------------

decodeURIComponent()解码

定义和用法

decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码。

语法

decodeURIComponent(URIstring)
参数描述
URIstring 必需。一个字符串,含有编码 URI 组件或其他要解码的文本。

返回值

URIstring 的副本,其中的十六进制转义序列将被它们表示的字符替换。

 

 

var test1="http://www.w3school.com.cn/My first/"
document.write(encodeURIComponent(test1)+ "<br />")
document.write(decodeURIComponent(test1))

输出结果:

http%3A%2F%2Fwww.w3school.com.cn%2FMy%20first%2F
http://www.w3school.com.cn/My first/

 

以上是关于浏览器URL中 encodeURIComponent()加密和decodeURIComponent()解码的主要内容,如果未能解决你的问题,请参考以下文章

在浏览器中输入url回车之后会发生什么

在浏览器中输入url回车之后会发生什么

使用 jQuery mobile 在 Flask 中调用重定向(url_for('xxx'))后浏览器中的 URL 未更新

router.navigate(url) 不加载组件,但直接在浏览器中输入 url

如何像浏览器一样在 Java 中组合 URL 片段?

perl - 在非默认浏览器中打开的浏览器中启动 url