JavaScript 解析 get 请求 url 参成对象
# 1、方式一
// url参数解析
function getUrlkey(url) {
var params = {};
var urls = url.split("?"); console.log('1_分割url:', urls)
var arr = urls[1].split("&"); console.log('2_分割urls[1]:', arr)
for (var i = 0, l = arr.length; i < l; i++) {
var a = arr[i].split("="); console.log('3_遍历 arr 并分割后赋值给a:', a[0], a[1])
params[a[0]] = a[1]; console.log('4_a给params对象赋值:', params)
} console.log('5_结果:', params)
return params;
}
console.log(6,getUrlkey('http//aaa/txt?a=1&b=2&c=3'))
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# 2、方式二
/*
url String 可选参数, url地址
OneKey String 可选参数, 获取当前网址指定参数
Delete_key Array 可选参数, 过滤指定参数
*/
let getUrlData =function (url,OneKey,Delete_key=[]){
if(!url)url = window.location.search;
var url_l = url.split('?')[1];
var url_ll = url_l.split('&'),obj ={};
url_ll.forEach((item,idx)=>{
var key = item.split('=')[0];
var val = item.split('=')[1];
if(Delete_key.indexOf(key)==-1) obj[key] = val;
})
if(OneKey&&url_l.indexOf(OneKey))return obj[OneKey];
return obj;
}();
console.log('当前url的参数对象:',getUrlData('http//aaa/txt?a=1&b=2&c=3'))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
上次更新: 2024/01/30, 00:35:17
- 02
- Node与GLIBC_2.27不兼容解决方案08-19
- 03
- Git清空本地文件跟踪缓存08-13