两种方法:
假设 url 为:
https://www.baidu.com?name=jawil&age=23
1: 普通实现
function fn(key) {
var obj = {}
var searchStr = window.location.search.substring(1);
searchStr.split('&').forEach(function(item) {
var arr = item.split('=');
obj[arr[0]] = arr[1];
});
return obj[key]
}
console.log(fn('name')) //jawil
console.log(fn('age')) //23
2: 使用正则:
function fn(key) {
var reg = new RegExp("(^|&)" + key + "=([^&]*)(&|$)"); //url正则表达式
var flag = window.location.search.substring(1).match(reg);
return flag != null ? unescape(flag[2]) : null;
}
console.log(fn('name')) //jawil
console.log(fn('age')) //23