decodeuri方法
URI(Uniform Resource Identifier,统一资源标识符)是一个用于标识和定位资源的字符串。在Web中,URI常被用作URL(统一资源定位符)的一种形式。
在Web开发中,经常需要对URI进行编码或解码。编码是将特殊字符转换为%xx表示的过程,其中xx是相应字符的ASCII码的十六进制表示。解码是将编码后的URI转换回原来的形式。
JavaScript 提供了几种用于编码和解码uri的方法,其中之一就是decodeURI(方法。
语法:
参数:
返回值:
解码后的字符串。
1.将编码后的URI字符串转换为原始的字符序列。
2. 进行特殊字符的解码,如 %xx 形式的字符,其中 xx 是字符的 ASCII 码的十六进制表示。
在使用 decodeURI( 方法时,需要注意以下几点:
1. 如果输入的 URI 未经过编码,解码结果将与原始字符串完全一致。因为 decodeURI( 只会解码已经被编码的字符,对未被编码的字符不做任何处理。
下面是一些示例,说明 decodeURI( 方法的用法:
示例1:
```javascript
console.log(decodeURI(uri));
```
在这个示例中,URI 字符串经过编码,包含两个中文字符"%E4%B8%AD%E6%96%87",使用 decodeURI( 方法对其进行解码后得到"中文"。
在线url网址编码解码示例2:
```javascript
console.log(decodeURI(uri));
```
在这个示例中,URI 字符串经过编码,包含三个空格字符"%20",使用 decodeURI( 方法对其进行解码后得到" path/ file.html"。
示例3:
```javascript
var decodedUri = decodeURI(uri);
console.log(decodedUri);
var params = decodedUri.split("?")[1].split("&");
var queryParams = {};
for (var i = 0; i < params.length; i++)
var param = params[i].split("=");
var key = param[0];
var value = param[1];
queryParams[key] = value;
console.log(queryParams);
// 输出: { q: '中文', page: '1', size: '10' }
```
在这个示例中,URI 字符串经过编码,包含一个查询参数"q=%E4%B8%AD%E6%96%87&page=1&size=10"。使用 decodeURI( 方法对其进行解
码后得到"q=中文&page=1&size=10"。然后通过字符串分割和循环处理,将查询参数解析为一个对象。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论