function urlparameterforkey(name) {
//读取html 数据
var decodeStr = window.location.search.substr(1);
//待处理的字符串
var patt = new RegExp(name);
//要查找的字符串
if (patt.test(decodeStr)) {
//字符串存在返回true否则返回false
new RegExp("(^|&)" + name + "=([^&]*)").exec(decodeStr);
return RegExp.$2
} else {
return undefined;
}
//读取 html 参数
};
window.location.search :
获取url之后的字符串 , 如 www.baidu.com?id=7 得到 ?id=7;
RegExp :
RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。其对象可使用 compile(),text(),exec()方法
如果 exec() 找到了匹配的文本,则返回一个结果数组。否则,返回 null。此数组的第 0 个元素是与正则表达式相匹配的文本,第 1 个元素是与 RegExpObject 的第 1 个子表达式相匹配的文本(如果有的话),第 2 个元素是与 RegExpObject 的第 2 个子表达式相匹配的文本(如果有的话),以此类推。除了数组元素和 length 属性之外,exec() 方法还返回两个属性。index 属性声明的是匹配文本的第一个字符的位置。input 属性 则存放的是被检索的字符串 string。我们可以看得出,在调用非全局的 RegExp 对象的 exec() 方法时,返回的数组与调用方法 String.match() 返回的数组是相同的。