从这个链接里面提取后面的两个参数,然后再保存到本地let href = 'http://w3c.pcidata.cn/pci_int...'
let hashString = (new URL('http://w3c.pcidata.cn/pci_integral_mall_h5/#/?goodsType=09&mediaId=mt2000000019')).hash;
// #/?goodsType=09&mediaId=mt2000000019
let params = new URLSearchParams(hashString.replace('#/?',''));// hash 去掉 #/?
// [["goodsType", "09"],["mediaId", "mt2000000019"]]
console.log(params.get('mediaId'));// 获取参数
// mt2000000019
console.log(Object.fromEntries(params));// 数组转对象
// {goodsType: "09", mediaId: "mt2000000019"}
注意:不兼容IE
https://developer.mozilla.org...
https://developer.mozilla.org...
https://developer.mozilla.org...
function getQueryVal(url){
url = url || '';
let arr = (url.split("?")[1] || url || '').split("&");
let o={};
if(arr[0]==''){return o}
arr.forEach(function(x){
let ar=x.split("=");
o[ar[0]]=ar[1]
});
return o
}
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
3 回答830 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
简易的实现,同名参数是直接覆盖的(一般够用)