JavaScript中encodeURI与decodeURI的使用详解
本文介绍JavaScript中encodeURI和decodeURI函数的配对使用方法。encodeURI用于将包含中文等特殊字符的URL编码,避免浏览器解析错误,同时保留特定分隔符如冒号、分号和问号。decodeURI则用于将编码后的字符串还原。通过示例展示了如何对包含中文的URL进行编码和解码操作,并对比了Java中对应的URLDecoder和URLEncoder类。
基本概念
encodeURI和decodeURI通常配合使用。当浏览器地址栏包含中文字符时,可能会引发不可预知的错误。此时,可以使用encodeURI将非英文字符转换为英文编码格式,而decodeURI则用于将编码后的字符还原为原始内容。需要注意的是,encodeURI方法在编码时会保留特定的字符,包括冒号(:)、斜杠(/)、分号(;)和问号(?),不进行编码。如果需要对这些字符也进行编码,应使用encodeURIComponent方法。
decodeURI()函数的功能类似于Java中的java.net.URLDecoder.decode(URIString, "UTF-8")方法。
encodeURI()函数的功能类似于Java中的java.net.URLEncoder.encode(URIString, "UTF-8")方法。
二、例子
代码示例
具体实现代码如下:
<script type="text/javascript">
var uriStr = "http://www.baidu.com?name=张三&num=001 zs";
var uriec = encodeURI(uriStr);
document.write("编码后的" + uriec);
var uridc = decodeURI(uriec);
document.write("解码后的" + uridc);
</script> 编码后的结果为:http://www.baidu.com?name=%E5%BC%A0%E4%B8%89&num=001%20zs
解码后的结果为:http://www.baidu.com?name=张三&num=001 zs
D3.js 比例尺与坐标轴的配置详解
2026-11-05 16:54:46
JavaScript怎么遍历对象的Symbol键和不可枚举属性
2026-11-05 13:13:39
封装一个健壮的JS字符串判空工具函数
2026-11-05 12:16:14
JavaScript合并数组的三种常用方法:concat、扩展运算符与push
2026-11-05 11:22:29
JavaScript立即执行函数(IIFE)是什么及基本语法
2026-11-05 10:51:19
