js使用encodeURI和decodeURI转码和解码
时间: 2024-04-26 22:22:15 浏览: 117
在 JavaScript 中,encodeURI 函数和 decodeURI 函数可以分别用于将 URL 字符串进行编码和解码,以便于在网络中传输。这两个函数可以用于编码或解码特殊字符,比如中文、空格、井号等。
encodeURI 函数将 URL 字符串中的特殊字符进行编码,返回一个编码后的字符串。语法如下:
```
encodeURI(uri)
```
其中,`uri` 是需要编码的 URL 字符串。
例如,对于如下 URL:
```javascript
var url = "https://www.example.com/search?q=编程语言&sort=date";
```
我们可以使用 encodeURI 函数进行编码:
```javascript
var encodedUrl = encodeURI(url);
console.log(encodedUrl);
```
输出结果为:
```
https://www.example.com/search?q=%E7%BC%96%E7%A8%8B%E8%AF%AD%E8%A8%80&sort=date
```
可以看到,中文字符被编码为对应的 UTF-8 字符。
而 decodeURI 函数则是将编码后的字符串进行解码,返回一个解码后的字符串。语法如下:
```
decodeURI(encodedURI)
```
其中,`encodedURI` 是需要解码的编码后的字符串。
例如,对于上面编码后的 URL:
```javascript
var encodedUrl = "https://www.example.com/search?q=%E7%BC%96%E7%A8%8B%E8%AF%AD%E8%A8%80&sort=date";
```
我们可以使用 decodeURI 函数进行解码:
```javascript
var url = decodeURI(encodedUrl);
console.log(url);
```
输出结果为:
```
https://www.example.com/search?q=编程语言&sort=date
```
可以看到,编码后的中文字符被正确地解码了。
阅读全文