0

我能做的是用新的属性扩展我的 JSON 对象。

例如

  var jsonText = {
            "Repeats": 1,
            "Trials": 4,
            "GroupName": "Mobile phones",
            "targets": [
                    {
                        "name": "Apple",
                    },
                    {
                        "name": "Samsung",
                    }
                ]}

我想要结束的是包含一个新项目,因此扩展对象,使其看起来像这样。

  var jsonText = {
            "NewItem" : NewValue,
            "Repeats": 1,
            "Trials": 4,
            "GroupName": "Mobile phones",
            "targets": [
                    {
                        "name": "Apple",
                    },
                    {
                        "name": "Samsung",
                    }
                ]}
4

1 回答 1

6

您有一个 JavaScript 对象文字,而不是 JSON 字符串。你可以像普通的对象字面量一样与之交互:

jsonText.NewItem = "NewValue";

如果您确实有一个 JSON 字符串,您可以首先将其解析为 JavaScript 对象,然后以相同的方式处理它,然后将其序列化回 JSON 字符串。例如:

var jsonText = '{ "Repeats": 1, "Trials": 4 }',
    actualObj = JSON.parse(jsonText);
actualObj.newItem = "New Value";
jsonText = JSON.stringify(actualObj);
于 2012-12-20T11:37:11.710 回答