2016-08-02 33 views
0

我想將數組添加爲json值。將數組設置爲Javascript中的json格式的值

Json格式如下。

json_data = [ 
'name':'Testing' 
'email':'TestEmail' 
'links':[ 
'[email protected]', 
'[email protected]', 
'[email protected]'] 
] 

如何在JavaScript中設置'鏈接'的值?

我做了如下。

links_array = []; 
links_array =['testing','test2']; 

json_data.links = links_array; 

我想附加這兩個字符串,但不能。

任何幫助將不勝感激。

+1

這是一個語法錯誤。你確定它不是包含'links'數組的對象嗎? – slebetman

+0

你可能打算寫'json_data = {...} –

回答

4

假設您的示例的語法是正確的,您可以對數組使用「push」方法。

json_data = { 
'name':'Testing', 
'email':'TestEmail', 
'links':[] 
}; 

json_data.links.push("[email protected]"); 
json_data.links.push("[email protected]"); 
json_data.links.push("[email protected]"); 
0

你必須做些微的改變才能使它工作。

首先,您必須將第一個方括號替換爲捲曲方括號。通過這樣做你的對象將成爲JSON文字 - 一個關鍵值對。

var json_data = { 
'name':'Testing', 
'email':'TestEmail', 
'links':[ 
'[email protected]', 
'[email protected]', 
'[email protected]'] 
} 
0

除了push由@giovannilobitos提到你可以使用concat,做這一切在一個:

第二件事,你以後'name':'Testing''email':'TestEmail'

下面將很好地工作錯過了逗號走。

var json_data = { 
 
    'name':'Testing', 
 
    'email':'TestEmail', 
 
    'links':[ 
 
    '[email protected]', 
 
    '[email protected]', 
 
    '[email protected]' 
 
    ] 
 
}; 
 
var links_array = ['testing','test2']; 
 

 

 
json_data.links = json_data.links.concat(links_array); 
 

 
console.log(json_data.links);

在MDN的array reference你可以找到如何修改陣列在JavaScript的完整列表。