动态添加变量名称值对到 JSON 对象

2024-05-05

我有一个充满 ips 的 json 对象,例如

var ips = {}

然后我将 ip 对象添加到该对象,如下所示

ips[ipID] = {}

然后我需要向每个 ip 添加动态/变量名称值对,所以我使用这样的代码

var name; var value; var temp = {};
tmp[name] = value

我的问题是,如何将这些名称值对/ tmp 添加到我的 ipID 对象中,以便我的结果像

ipID = { name : value, anotherName : anotherValue }

那不是 JSON。它只是 Javascript 对象,与 JSON 完全无关。

您可以使用括号动态设置属性。例子:

var obj = {};
obj['name'] = value;
obj['anotherName'] = anotherValue;

这与使用对象文字创建对象完全相同,如下所示:

var obj = { name : value, anotherName : anotherValue };

如果您已经将对象添加到ips集合中,您可以使用一对括号来访问集合中的对象,并使用另一对括号来访问对象中的属性:

ips[ipId] = {};
ips[ipId]['name'] = value;
ips[ipId]['anotherName'] = anotherValue;

请注意与上面代码的相似之处,但您只是使用ips[ipId]代替obj.

您还可以从集合中获取对该对象的引用,并在对象保留在集合中时使用它来访问该对象:

ips[ipId] = {};
var obj = ips[ipId];
obj['name'] = value;
obj['anotherName'] = anotherValue;

您可以使用字符串变量来指定属性的名称:

var name = 'name';
obj[name] = value;
name = 'anotherName';
obj[name] = anotherValue;

它是标识属性的变量(字符串)的值,因此当您使用obj[name]对于上面代码中的两个属性,访问变量时的字符串决定了将访问哪个属性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

动态添加变量名称值对到 JSON 对象 的相关文章