JavaScript关联数组到JSON
如何将JavaScript关联数组转换为JSON?
我尝试了以下方法:
var AssocArray = new Array();AssocArray["a"] = "The letter A"
console.log("a = " + AssocArray["a"]);
// result: "a = The letter A"
JSON.stringify(AssocArray);
// result: "[]"
回答:
数组应仅包含带有数字键的条目(数组也是对象,但您实际上不应混用)。
如果将数组转换为JSON,则该过程将仅考虑数值属性。其他属性只是被忽略,这就是为什么您得到一个空数组的原因。如果您看一下length
数组的,也许这更加明显:
> AssocArray.length0
通常被称为“关联数组”的实际上只是JS中的一个对象:
var AssocArray = {}; // <- initialize an object, not an arrayAssocArray["a"] = "The letter A"
console.log("a = " + AssocArray["a"]); // "a = The letter A"
JSON.stringify(AssocArray); // "{"a":"The letter A"}"
可以通过数组符号或点符号(如果键不是保留关键字)访问对象的属性。因此AssocArray.a
与相同AssocArray['a']
。
以上是 JavaScript关联数组到JSON 的全部内容, 来源链接: utcz.com/qa/406349.html