JavaScript中关于decodeURI和encodeURI使用详解

decodeURI和encodeURI函数是JavaScript提供的将一部分字符进行十六进制的转义序列替换。

文中提供使用在线工具进行字符串的十六进制的转义序列替换和基于JavaScript实现转码和解码操作。

一、使用在线工具

    在线encodeURI编码decodeURI解码工具》,使用在线工具录入需要进行转码的数据。


二、JavaScript使用decodeURI和encodeURI函数

    2.1、encodeURI函数:将字符串作为URI进行编码。

//使用
encodeURI("http://www.xuexiareas.com/My first/")
//结果
http://www.xuexiareas.com/My%20first/

    注:从以上结果可知,使用encodeURI函数将字符串中的空格转义成了%20来替换原有的空格。

    2.2、decodeURI函数:将encodeURI转码的字符串进行解码。

//使用
decodeURI("http://www.xuexiareas.com/My%20first/")
//结果
http://www.xuexiareas.com/My first/

    经过decodeURI解码后,被替换的十六进制的转义序列还原成了便于人们识别的空格。

三、encodeURI和decodeURI的注意点

    3.1、encodeURI不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码:! @ # $ & ( ) = : / ; ? + ',

    3.2、若URI组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。

六月初字帖坊小程序 你想要的字帖模板及工具,这里都有!