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=10var params = new URLSearchParams(window.location.search);params.get('id') //10