2

我正在尝试使用JSON.stringify()方法将 javascript 对象转换为 json。我的问题是,当它刺痛对象时,它只刺痛对象的键和值。它不包括对象名称。

我想要输出,{"Color" : "{"Name":"background","Type":"Color","Value":"Red"}"}但输出是{"Name":"background","Type":"Color","Value":"Red"}.

这是演示

我知道 json 是这样工作的,但我想要实现这一目标的方法。提前致谢 !

4

3 回答 3

6

该对象不知道自己的名称,因此您需要在 JSON 中显式命名它:

JSON.stringify({'Color': color});
于 2013-05-27T09:33:19.453 回答
2

您可以使您的createColor函数返回一个具有包含颜色对象的属性的对象:

function createColor() {
  var color = new Color();
  color.Name = "background";
  color.Type = "Color";
  color.Value = "Red";

  return { Color: color };
}

演示:http: //jsfiddle.net/Guffa/hMwjq/5/

于 2013-05-27T09:42:33.437 回答
1

尝试这个 :

(function () {
    var color = createColor();
    jsonObject = {};
    jsonObject.color = color;
    var json = JSON.stringify(jsonObject);
    console.log(json);
})();

查看完整演示

于 2013-05-27T09:37:14.253 回答