通过id找到一个特定的json

时间:2012-12-25 09:23:01

标签: javascript

我有几个名为"jsonObject_" + id的json变量,例如:

var jsonObject_123 = ...;

var jsonObject_456 = ...;

等。所有这些jsons具有相同的格式,相同的键,但值不同。

我还有一个接收id作为参数的方法。

我需要根据id更改正确的jsonObject地址。也就是说,如果参数为123,我需要更改jsonObject_123.address

如何根据id参数获取对jsonObject_123的引用?

1 个答案:

答案 0 :(得分:4)

首先是关于这里使用的术语的一个小小的评论。您所谓的 JSON vars 与JSON无关。这些是普通的javascript变量。 JSON是序列化格式。

现在,根据定义这些变量的范围,您可以使用以下内容:

var id = '123';
window['jsonObject_' + id].address = 'some address';

在这个例子中,我假设这些变量在全局范围内声明=>您可以通过window对象访问它们。您必须根据具体情况调整此代码。

但更好的方法是将所有这些变量分组到一个包含对象中:

var jsonObject = {};
jsonObject['123'] = { address: 'address 1' };
jsonObject['456'] = { address: 'address 2' };
...

然后当你想要访问它时:

jsonObject['123'].address = 'some new address';