1.通过正则
function getUrlParams(url){
const reg = /([^&?#]+)=([^&?#]+)/g;
const obj = {};
url.replace(reg, (...arg) => {
const [, arg1, arg2] = arg;
obj[arg1] = arg2;
})
return obj;
}
2.通过字符串拆分
function getUrlParams(Url){
var str = Url;
str = str.split('?')[1];
var arr = str.split("&");
var obj = new Object();
for (var i = 0; i < arr.length; i++) {
var tmp_arr = arr[i].split("=");
obj[decodeURIComponent(tmp_arr[0])] = decodeURIComponent(tmp_arr[1]);
}
return obj;
}
3.通过原生格式化
// eg:window.location=http://www.baidu.com?id=10
var params = new URLSearchParams(window.location.search);
params.get('id') //10