由字符串索引的Javascript数组无法使用JSON.stringify转换为JSON?

时间:2009-09-01 18:15:55

标签: javascript json

我一直在尝试将字符串键入的javascript数组进行字符串化。 JSON始终将数组字符串化为空([])。

var arr = new Array(3);
arr['A'] = "Foo";
arr['B'] = "Bar";
arr['C'] = "Baz";

var str = JSON.stringify(arr);

如果我用0,1,2替换'A','B','C',那么数组将被正确地字符串化。我确定我错过了什么,只是不确定是什么。

谢谢!

2 个答案:

答案 0 :(得分:1)

你不能把键作为数组中的字符串,使用对象{}。

var obj = {};
obj['A'] = "Foo";
obj['B'] = "Bar";
obj['C'] = "Baz";

var str = JSON.stringify(obj);

答案 1 :(得分:0)

你想要一个对象,而不是一个数组。

JSON.stringify({
  "A": "Foo",
  "B": "Bar",
  "C": "Baz"
});