码迷,mamicode.com
首页 > Web开发 > 详细

URL参数解析方法

时间:2017-01-06 01:00:20      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:pre   内容   封装   uri   pen   val   reg   match   location   

这几天遇到这样一个需求,需要在不同页面之前传递参数,一般我们都是通过URL来传递,如下

window.open(‘test.html?id=123&name=456‘)

然后在新窗口的时候我们再用window.location.search方法获取?后面的参数内容,但是拿到的内容是“?id=123&name=456”这样的形式,我们还需要进行一系列的字符串处理才能拿到我们需要的信息,这样就比较麻烦一些了,所以我们就基于这个需求封装一个工具方法来把参数后面的内容解析成一个对象字面量来供我们使用,代码如下

function urlParse(){
    var url = window.location.search;
        var obj = {};
        var reg = /[?&][^?&]+=[^?&]+/g;
        var arr = url.match(reg);

        if (arr) {
            arr.forEach(function (item) {
                var tempArr = item.substring(1).split(‘=‘);
                var key = decodeURIComponent(tempArr[0]);
                var val = decodeURIComponent(tempArr[1]);
                obj[key] = val;
            });
        }
        return obj;
}
urlParse() // return {id:123,name:456}
 

 这样只要在新窗口调用这个方法我们就能返回一个对象字面量的参数来供我们使用了。

URL参数解析方法

标签:pre   内容   封装   uri   pen   val   reg   match   location   

原文地址:http://www.cnblogs.com/Mr-weiwei/p/6254445.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!