我有几个名为"jsonObject_" + id
的json变量,例如:
var jsonObject_123 = ...;
var jsonObject_456 = ...;
等。所有这些jsons具有相同的格式,相同的键,但值不同。
我还有一个接收id作为参数的方法。
我需要根据id更改正确的jsonObject地址。也就是说,如果参数为123
,我需要更改jsonObject_123.address
如何根据id参数获取对jsonObject_123
的引用?
答案 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';