在JavaScript中从URL获取查询字符串参数

时间:2017-02-28 21:47:07

标签: javascript regex url dom

我正在寻找一种从网址中提取查询参数及其对应值的方法。

例如。如果我有网址:http://example.com/home?key=value

如何找到key

的值

1 个答案:

答案 0 :(得分:0)

使用此功能。它的灵感来自riot.route.query()

getQuery( [url] )会在key的查询或可选的value参数中返回包含每个 window.location.hrefurl 对的对象



var iFrameUrls = [
    'http://www.kk.com/home/add.do?select=inputText',
    '?select=verifyText&this=foo%20bar',
    'http://www.kk.com/home/add.do?select=confirmText'
    ];

function getQuery(url) {
    var query = {},
        href = url || window.location.href;
        
    href.replace(/[?&](.+?)=([^&#]*)/g, function (_, key, value) {
        query[key] = decodeURI(value).replace(/\+/g, ' ');
    });
    
    return query;
}

for (var i = 0, l = iFrameUrls.length; i < l; i++)
  console.log( getQuery( iFrameUrls[i] ) );
&#13;
&#13;
&#13;