首页 > 解决方案 > 如何使用 Javascript 创建 JSON 对象?

问题描述

如果我有以下 JSON 有效负载,我该如何使用 Javascript 对其进行编码?

{"releaseTitle":"使用高级字段进行测试", "variables":{"jm_key_value_map":{"key2":"value2","name":"jhm"},"jm_list":["item1"," item1","item3"],"jm_set":["item1","item1","item3"],"autoStart":"true"}}

在邮递员中,我可以在 post api 中使用此有效负载来创建记录。但是,我现在需要在我正在处理的集成中使用 Javascript 对其进行编码。

标签: javascriptjson

解决方案


在 Javascript 中,JSON 对象就是 Javascript 对象。

你可以简单地写这样的东西:

let jsonObject = {
  releaseTitle:"Testing with the Advanced Fields", 
  variables: {
    jm_key_value_map: {
      key2: "value2", 
      name: "jhm"
    },
    jm_list: ["item1", "item1", "item3"],
    jm_set: ["item1", "item1", "item3"],
    autoStart: "true"
  }
};

您还可以动态创建相同的对象,一次添加一个属性,如下所示:

let jsonObject = {};
jsonObject.releaseTitle = "Testing with the Advanced Fields";
jsonObject.variables = {};
jsonObject.variables.jm_key_value_map = {};
jsonObject.variables.jm_key_value_map.key2 = "value2";
jsonObject.variables.jm_key_value_map.name = "jhm";
jsonObject.variables.jm_list = ["item1", "item1", "item3"];
jsonObject.variables.jm_set = ["item1", "item1", "item3"];
jsonObject.variables.autoStart = "true";

你也可以混搭,像这样:

let jsonObject = {};
jsonObject["releaseTitle"] = "Testing with the Advanced Fields";
jsonObject.variables = {
  jm_key_value_map: {
    key2: "value2", 
    name:"jhm"
  },
  jm_list: ["item1", "item1", "item3"],
  jm_set: ["item1", "item1", "item3"],
  autoStart: "true"
};

这是因为 JSON 数据格式是受 Javascript 启发的。它甚至在名称中(JSON 代表 JavaScript Object Notation)。阅读更多:https ://www.json.org/json-en.html


推荐阅读