在javascript中解析querystring中的变量

在javascript中解析querystring中的变量,javascript,jquery,Javascript,Jquery,可能重复: 我有以下查询字符串: "active_tab=delivered&active_tab=all&active_tab=delivered&active_tab=outstanding &active_tab=delivered&active_tab=outstanding&active_tab=all&active_tab=delivered&active_tab=outstanding&title_filte

可能重复:

我有以下查询字符串:

"active_tab=delivered&active_tab=all&active_tab=delivered&active_tab=outstanding
&active_tab=delivered&active_tab=outstanding&active_tab=all&active_tab=delivered&active_tab=outstanding&title_filter=conformance&title_filter=delivering&title_filter=packaging
&title_filter=delivering&title_filter=all&title_filter=delivering&title_filter=all&title_filter=packaging&title_filter=conformance&title_filter=packaging
&title_filter=delivering&title_filter=packaging&title_filter=ordered"
如何解析上述查询字符串中的最终
标题过滤器(“已订购”)和
活动选项卡(“已交付”)?此外,如果querystring变量不存在,则将其设置为=
“”

如果需要支持阵列,请执行以下操作:

largeString.split('&').forEach(function(keyValue){
    var kvp = keyValue.split('=');

    if(kvp[0] in query){
        if(typeof(query[kvp[0]] === 'string')){
            query[kvp[0]] = [query[kvp[0]]];
        }
        query[kvp[0]].push(kvp[1]);
    }else{
        query[kvp[0]] = kvp[1];
    }
});

我修改了querystring以删除重复项,然后执行了以下操作:

var active_tab = window.location.search.split('active_tab=')[1].split('&')[0]
var title_filter = window.location.search.split('title_filter=')[1].split('&')[0]

这就是一个查询字符串吗?它有同一把钥匙在里面好几次了<代码>分解(“&”,$array)在数组中循环时<代码>分解(“=”,$element)第一个数组的每个元素…使用令牌做一些事情…我不久前写了这个,你可以看看它是否适合你:Regex可能值得探索:@crush这是PHP,question处理JS。
var active_tab = window.location.search.split('active_tab=')[1].split('&')[0]
var title_filter = window.location.search.split('title_filter=')[1].split('&')[0]