用window.location.href获取url再js正则来获得需要的参数;
这个正则有多种写法,这里我选择这样写,要查找的属性名我直接以参数的形式传进去,用正则查找,以"?&#"这三个其中一个符号开头+属性名变量+等号和后面要查找除了"?&#"这三个符号的字符.正则写完之后我选择用exec这个方法来查找,这个方法会把查找到的结果以数组的形式返回,我再把等号后面的结果单独分一个组(在正则里面用"()"包起来的是一个分组),这样找到的结果里面就有二个分组一个是类似于'?key=110'这种和单独一个'110'的属性值分组第二个分组就是我们要的结果,返回第二个分组即可.(这就是我查找的思路,当然写法有很多)
正则
/*正则获取URL参数*/
function queryURLParams(url, name) {
var pattern = new RegExp("[?&#]+" + name + "=([^?&#]+)");
var res = pattern.exec(url);
console.log(res);
if (!res) return;
if (!res[1]) return;
return res[1];
}
var url = "";
var res = queryURLParams(url, "key");
console.log(res);
使用方法
getParameterByName(url,"name")
结果示例