2015-02-09 74 views
0

我正嘗試在javascript中創建json,並試圖以root身份掛載節點,但設法將它們放在另一個連接到根節點的節點上。這裏是我的代碼:無法將json節點掛載到根

var responseData = []; 
responseData.push({"groups": groups}); 

,並得到這樣的層次結構:

enter image description here

我想有「羣體」節點直接連接到根數組對象,而不是在另一個封裝「0」節點。請注意,我需要在代碼中執行此操作,而不是手動生成字符串。

+0

你用什麼庫來獲取樹(或者這只是你的調試器的輸出?) – 2015-02-09 17:57:40

+0

的代碼是純JS。對於樹顯示:http://www.jsoneditoronline.org/ – Alex 2015-02-09 20:26:32

+0

這只是[JSON編輯器在線](http://www.jsoneditoronline.org)顯示其中包含對象的數組的方式。實際JSON中的期望結果是具有[[「groups」:yourGroups}](第一個元素設置爲對象的數組)或[[groups]:yourGroups]'(具有屬性「組「)。 JSON不支持後者,僅供參考。 – 2015-02-09 21:22:48

回答

0

數組是索引數據結構。如果將一個對象推到一個空數組上,那麼你的對象將位於該數組的索引0處。

但是,數組只是對象。如果你真的想向它添加一個實例變量,那麼你可以將你的組數據分配給你的數組中的一個新屬性。

例如

var responseData = []; 
responseData.groups = groups; 
+0

我已經試過了,它似乎沒有工作。像'responseData.testing =「AAAAA」;'沒有效果,我沒有看到任何地方的'測試'。 @AlfredoDelgado – Alex 2015-02-09 20:24:36

+0

你想要一個對象,而不是一個數組。 'var responseData = {};'注意花括號,而不是方括號。 – 2015-02-09 20:26:31

+0

如果您需要更多幫助,請創建一個不適用於您的代碼示例:http://jsbin.com/?html,js,output – 2015-02-10 19:52:17