经常需要用到的获取URL参数,记录一下两种方法
方法一, 字符串、数组转换
function getUrlParam(param) {
var name, value;
var str = location.href;
var num = str.indexOf("?");
var dataArr = {};
str = str.substr(num + 1);
var arr = str.split("&");
for (var i = 0; i < arr.length; i++) {
num = arr[i].indexOf("=");
if (num > 0) {
name = arr[i].substring(0, num);
value = arr[i].substr(num + 1);
dataArr[name] = value;
}
}
return dataArr[param];
}
方法二,正则表达式
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return decodeURIComponent(r[2]); return null;
}