2011-01-26 101 views
3

我有一個代碼獲取兩個JSON對象的最終集合,像這樣。如何將JSON對象作爲新級別添加到另一個JSON對象?

var jsonL1 = {"holder1": {}} 
var jsonL2 = {"section":"0 6","date":"11/12/13"} 

我想在jsonL1.holder1中插入jsonL2並將它合併到一個JSON對象。

所需的輸出

{ 
    "holder1": { 
     "section": "0 6", 
     "date": "11/12/13" 
    } 
} 

我怎麼能這樣做?

L1.holder1 = L2 

我刪除從變量名「JSON」,作爲@patrick已經說了,你是在處理不與「JSON對象」,但使用對象常量:

+2

即不JSON。這些是javascript對象文字。 – user113716 2011-01-26 19:25:55

回答

2

如果你想第一個對象參考第二,這樣做:

jsonL1.holder1 = jsonL2; 

如果你想要一個在第一個副本的第二,這是不同的。

所以它取決於你的意思是合併它合併成一個對象。使用上面的代碼,對jsonL2的更改將在jsonL1.holder中可見,因爲它們實際上只是引用同一個對象。


小題外話,但得到JSON數據和javascript對象之間的差異的多個視覺描述:

// this is a javascript object 
var obj = {"section":"0 6","date":"11/12/13"}; 

    // this is valid JSON data 
var jsn = '{"section":"0 6","date":"11/12/13"}';