获取url传参

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() 返回的数组是相同的。
posted @ 2016-06-04 15:27  没事看看电影  阅读(306)  评论(0编辑  收藏  举报