定义和用法

decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。

语法

decodeURI(URIstring)

实际应用的时候

比如我从a页面跳转到b页面,携带时间格式的参数

2021-05-24 14:31:00

到b页面时间参数多了一个%20的问题

就成了这个样子了

2021-05-24%2014:31:00


JavaScript decodeURI() 函数_java


这样的编码格式

传给后端,往往会出现格式问题,传不了

于是要对其进行处理

这个时候就需要用到decodeURI() 函数了。

例子:

a.html

<!DOCTYPE HTML>
<html>
<head>
<title></title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="https://cdn.bootcss.com/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
<style>

</style>
</head>
<body>
<button type="button" class="a">跳转到b界面</button>
</body>
<script>
//底部分类复选框取消和选中触发事件
$(".a").click(function() {
window.location.href = "b.html?username=super&workNumber=M202105241431&type=2&beginTime=2021-05-24 14:31:00&endTime=2021-05-24 14:31:00";
});

</script>
</html>

b.html

对获取到的时间参数进行转化一下

<!DOCTYPE HTML>
<html>
<head>
<title></title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="https://cdn.bootcss.com/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
<style>

</style>
</head>
<body>

</body>

<script>
//获取对方传过来的参数
function jqueryUrl(url) {
debugger
//将地址从"?"位置分割成两部分
var arr = url.split('?');
//取地址右边参数部分从"&"位置继续分割,成为单独参数列表
var params = arr[1].split('&'); //得到[a=1,b=2,c=3]
//定义一个空对象
var obj = {};
for (var i = 0; i < params.length; i++) {
var param = params[i].split('='); //得到[a,1]、[b,2]、[c,3]
obj[param[0]] = param[1]; //为对象赋值
}
return obj;
}
// url参数列表

var urlParams = jqueryUrl(location.href)


var beginTime=decodeURI(urlParams.beginTime)
var endTime=decodeURI(urlParams.endTime)
console.log("开始时间",beginTime)
console.log("结束时间",beginTime)

</script>

</html>


JavaScript decodeURI() 函数_matlab_02