获取全部参数
function getParams(url) {
try {
url = url.match(/\?([^#]+)/)[1];
const obj = {};
const arr = url.split('&');
for (let i = 0; i < arr.length; i++) {
let subArr = arr[i].split('=');
let key = decodeURIComponent(subArr[0]);
let value = decodeURIComponent(subArr[1]);
obj[key] = value;
}
return obj;
} catch (err) {
return null;
}
}
var urlStr = 'http://www.xxx.com/test?name=zhangshan&age=50#hello';
getParams(urlStr);
获取单个参数值
function getParam(url, key){
var pattern = new RegExp('[?&]*'+ key +'=([^&]+)');
try {
var value = url.match(pattern)[1];
return value;
} catch (err) {
return null;
}
}
var url = 'http://www.xxx.com/test?name=zhangshan&age=50#hello';
var key = 'name';
getParam(url, key);