从 URL - AngularJS 获取动态查询字符串参数

Get dynamic query string paramters from URL - AngularJS

我有一个 URL,其中查询字符串参数是动态的。我需要在 JavaScript 中阅读它们。我所做的是

我使用以下代码读取所有查询字符串参数。

例如:

// given url http://example.com/#/some/path?foo=bar&baz=xoxo
var searchObject = $location.search();
// searchObject  => {foo: 'bar', baz: 'xoxo'}

我还有一个带有键的数组。这里我的数组将有 foobaz.

例如: var list = ["foo", "baz"];

那么如何使用列表数组中的键从 URL 中获取值?

我这样试过

for(var i=0; i<list.length; i++)
                {
                    alert(searchObject.list[i]);
                }

但这给了我一个控制台错误 searchObject.list is undefined.

我在这里做错了什么?有人可以帮忙吗?

尝试

for(var i=0; i<list.length; i++)
{
    alert(searchObject[list[i]]);
}

我不确定您为什么包含 list 属性,searchObject 只是(顾名思义)一个普通的旧 javascript 对象。

这应该是你想要的:

for(var i=0; i<list.length; i++) {
    alert(searchObject[list[i]]);
}

遍历列表项,将每一项作为搜索 Object 对象的键。

http://jsfiddle.net/8vekqezj/

可能正在使用 AngularJS 实用程序:

angular.forEach(list, function(key){
  alert(searchObject[key]);
});