如何将新属性添加到json数组?

时间:2012-04-08 21:35:02

标签: javascript

我有以下数组:

var arry = [{title='Test'}, {title='Test2'}, {title='Test3'}];

我想为数组中的每个对象添加一个新属性。这样做的最快方法是什么?

3 个答案:

答案 0 :(得分:6)

for(var i = 0; i < arry.length; i++)
{
  arry[i].prop = "value";
}

答案 1 :(得分:2)

没有进一步的信息:放下手和字符串操作。

}每次出现之前,您都会插入foo='bar'

我觉得提到这是一个糟糕的解决方案,如果数组的结构不是100%刚性,它将在下次更新时爆炸。无论如何,这是一个很好的例子,看看“幕后发生了什么”

但是,为了获得有效的JSON字符串,您必须使用double qoutes包含键和字符串值。

无论如何,我建议你获得一个JSONParser并开始使用对象然后你有一个更强大的解决方案,例如马修发布了它。

这是有效JSON的例子

[
    {
        "title": "Test"
    },
    {
        "title2": "Test2"
    },
    {
        "title3": "Test3"
    }
]

http://jsonlint.com/

答案 2 :(得分:1)

以下是一些有效JSON的示例:

[
  {
     "title1": "hey, this is test one"
  },
  {
     "title2": "hi, test two"
  },
  {
     "title3": "what's up, test three"
  }
]

您发布的内容不是JSON。

这个答案可能会对您有所帮助:https://stackoverflow.com/a/617051/507629

要向数组添加内容,您只需使用.push()方法,例如:

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi");

Learn more about .push here