我運行以下piece of code:如何在Javascript中對數組進行字符串化?
var arr = [];
arr["aaa"] = {
"xxx" : 1,
"ttt" : 2
};
arr["bbb"] = {
"xxx" : 5,
"qqq" : 6
};
var tmp = JSON.stringify(arr);
alert(tmp);
但結果是[]
。如何使用字符串鍵和對象值對數組進行字符串化?
我運行以下piece of code:如何在Javascript中對數組進行字符串化?
var arr = [];
arr["aaa"] = {
"xxx" : 1,
"ttt" : 2
};
arr["bbb"] = {
"xxx" : 5,
"qqq" : 6
};
var tmp = JSON.stringify(arr);
alert(tmp);
但結果是[]
。如何使用字符串鍵和對象值對數組進行字符串化?
使用
var arr = {};
陣列應只用於數字索引數據,而不是任意屬性。當然你可以做到這一點,因爲它們實際上是物體。但它不會在JSON中工作。
相反,只是使用對象。
你不能這樣做,有兩個原因:
stringify
方法只考慮數組,而不是性能數據。如果您想在JSON中表示一個數組,您需要將數據放入實際數組中,而不是將數據作爲數組對象中的屬性。
如果您想要JSON中的屬性,則需要使用普通對象而不是數組。
對字符串鍵使用'{}'對象表示法 – soktinpk