【问题标题】:How to stringify an array in Javascript?如何在Javascript中对数组进行字符串化?
【发布时间】:2014-08-05 02:45:57
【问题描述】:

我正在运行以下piece of code

var arr = [];

arr["aaa"] = {
    "xxx" : 1,
    "ttt" : 2
};

arr["bbb"] = {
    "xxx" : 5,
    "qqq" : 6
};

var tmp = JSON.stringify(arr);

alert(tmp);

但结果是[]。如何用字符串键和对象值对数组进行字符串化?

【问题讨论】:

  • 对字符串键使用 {} 对象表示法

标签: javascript arrays json stringify


【解决方案1】:

你不能这样做,有两个原因:

  • stringify 方法只考虑数组中的数据,而不考虑属性。
  • 具有属性的数组没有 JSON 格式。

如果要在 JSON 中表示数组,则需要将数据放入实际数组中,而不是作为数组对象中的属性。

如果你想要 JSON 中的属性,你需要使用普通对象而不是数组。

【讨论】:

    【解决方案2】:

    使用

    var arr = {};
    

    数组只能用于数字索引数据,而不是任意属性。当然你可以做到,因为它们实际上是对象。但它不适用于 JSON。

    相反,只需使用对象。

    【讨论】:

      猜你喜欢
      • 2015-07-06
      • 1970-01-01
      • 2016-11-10
      • 1970-01-01
      • 2013-07-08
      • 1970-01-01
      • 2015-10-10
      • 2023-04-05
      • 2017-07-13
      相关资源
      最近更新 更多