将JSON对象添加到特定位置的另一个JSON对象

时间:2014-01-21 16:58:59

标签: javascript jquery

我有两个JSON对象:

var JSonData = {"li_ZPI":{},"li_ZIN":{"li_ISD":{},"li_AAH":{"li_AAD":{}},"li_EAH":{"li_EAD":{}},"li_REG":{},"li_PSC":{},"li_IMC":{},"li_GSP":{},"li_IES":{}}};

var additionalJSonData = {"li_AAH_1":{"li_AAD_1":{}}};

我想在JSONData additionalJSonData Object。

之后添加"li_AAH"个对象

2 个答案:

答案 0 :(得分:0)

如果您使用的是jQuery,可以使用$.extend()函数轻松完成:

$.extend(true, JSonData,additionalJSonData);

在任何其他框架中,都有类似的功能。

答案 1 :(得分:0)

问题是之后没有。这些“JSON”对象(Javascript对象,实际上,JSON将是转换到JS对象的文本字符串)是哈希,而不是数组。哈希没有秩序 - 也就是说,

for ( var f in JSonData ) {
}

没有规则,各种密钥("li_ZPI"等)会以任何特定的顺序显示,甚至每次都显示相同的顺序。

所以你当然可以添加新项目:

JSonData["li_AAH_1"] = {"li_AAD_1":{}};

但不要指望最终的JSON字符串按照您希望的方式进行排序。