2017-01-24 183 views
1

我有,我已經推值的JavaScript對象...JavaScript對象到JSON對象

var myObject = []; 
myObject.name = "Steve" 
myObject.job = "Driver" 

現在我想這些值作爲JSON,即

{ "name": "Steve", "job": "Driver" } 

是這可能嗎?我試圖JSON字符串化,但它返回一個空的對象

+1

另外請注意,你有你的期望輸出究竟是不是JSON。 JSON要求引用密鑰。 – Brad

+0

@Brad固定。謝謝! – chendriksen

+2

不知道爲什麼有人會低估這個問題。這是一個完全有效的問題,包含示例代碼,預期輸出和嘗試過的內容...... – Brad

回答

8

var myObject = [];應該var myObject = {};

3

首先,確保你創建一個object不是array.數組是數據的有序列表,其中作爲對象是一個無序的鍵值對組。因此,它們的序列化程度不同。

var myObject = {}; // <-- Changed [] to {} 
myObject.name = "Steve"; 
myObject.job = "Driver"; 

// Alternatively, you can do this 
var myObject = { 
    name: 'Steve', 
    job: 'Driver' 
}; 

將它轉換爲JSON與調用JSON.stringify一樣簡單。

var myObject = { 
 
    name: 'Steve', 
 
    job: 'Driver' 
 
}; 
 

 
var json = JSON.stringify(myObject); 
 
console.log(json);