javascript获取url参数的值
有时候需要将浏览器的地址,转化为json对象,方便操作,请求的url 可以从 window.location.href 获取,有些url后面带有 # 符号,需要过滤,请求参数一般是从问号 ? 开始,键值对用 = 连在一起,多个键值对用 & 拼接,下面是使用 replace 方法,匹配键值对,在回调方法将其转化为 json。
function getUrlVars() {
var vars = {};
var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&#]*)/gi,
function(m,key,value) {
vars[key] = value;
}
);
return vars;
}
比如:
// 比如url为:https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=js#t=23
var fType = getUrlVars();
console.log(fType);
// 输出结果为:
{
f: "8"
ie: "utf-8"
rsv_bp: "1"
rsv_idx: "1"
tn: "baidu"
wd: "js"
}