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

Get dynamic query string paramters from URL - AngularJS

本文关键字:查询 字符串 参数 动态 获取 URL AngularJS      更新时间:2023-09-26

我有一个查询字符串参数是动态的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]);
                }

但这给了我一个控制台错误 搜索对象.列表是未定义的。

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

这应该是你想要的:

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

遍历列表项,使用每个项作为 searchObject 对象的键。

http://jsfiddle.net/8vekqezj/

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

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

尝试

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

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