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

我有两个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 "li_AAH"对象之后添加additionalJSonData对象。

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

 $.extend(true, JSonData,additionalJSonData); 

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

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

 for ( var f in JSonData ) { } 

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

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

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

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