【问题标题】:get key:value pair inside sub-blocks获取子块内的键:值对
【发布时间】:2020-03-13 17:24:04
【问题描述】:

我有以下来自 Postman 的输出或到达终点(我们可以说)。

{
  "SearchResult": {
    "total": 11,
    "resources": [
      {
        "id": "12345",
        "name": "GuestType",
        "description": "Identity group ",
      },
      {
        "id": "56789",
        "name": "Admin",
        "description": "",
      },
    ]
  }
}

我想从这些值中提取"id""name"。我看到这些值在子块内。 如何使用需要放在邮递员“测试”选项卡中的java脚本提取这些键值?

【问题讨论】:

    标签: javascript json postman postman-pre-request-script


    【解决方案1】:

    下面的代码将返回只有 id 和 name 的对象数组......快乐编码:)

    let data = {
      "SearchResult":
      {
        "total": 11,
        "resources": [
          { "id": "12345", "name": "GuestType", "description": "Identity group ", },
          { "id": "56789", "name": "Admin", "description": "", }
        ]
      }
    }
    
    let ids = data.SearchResult.resources.map(obj => {
      id: obj.id,
      name: obj.name
    });
    

    【讨论】:

    • 太好了。它的工作。在这里你能帮我将每个值分配给一个变量(数组)并打印
    • 您能否通过代码示例简要介绍一下您要查找的内容,以便我更容易获得?
    【解决方案2】:

    var obj={
      "SearchResult": {
        "total": 11,
        "resources": [
          {
            "id": "12345",
            "name": "GuestType",
            "description": "Identity group ",
          },
          {
            "id": "56789",
            "name": "Admin",
            "description": "",
          },
        ]
      }
    }
    
    
    obj.SearchResult.resources.forEach((o)=>console.log(o.id,o.name));

    【讨论】:

    • 太好了。它的工作。在这里你能帮我将每个值分配给一个变量(数组)并打印
    • @impika 不清楚你要什么..你能告诉你想要输出的确切格式吗
    • 我想分别匹配id和name。例如:id[0]="12345", name[0]="GuestType" 同样适用于 id[1] 和 name[1] 所以我需要在数组中分配值
    • @impika 如果您想要数组中的结果,使用 map 是正确的方法,Kamil Kiełczewski 已经回答了它。
    【解决方案3】:

    试试

    let ids = data.SearchResult.resources.map(obj => obj.id);
    let names = data.SearchResult.resources.map(obj => obj.name);
    

    let data={ "SearchResult": { "total": 11, "resources": [ { "id": "12345", "name": "GuestType", "description": "Identity group ", }, { "id": "56789", "name": "Admin", "description": "", }, ] } }
    
    let ids = data.SearchResult.resources.map(obj => obj.id);
    let names = data.SearchResult.resources.map(obj => obj.name);
    
    console.log(ids);
    console.log(names);

    【讨论】:

      猜你喜欢
      • 2018-02-27
      • 1970-01-01
      • 2016-01-11
      • 1970-01-01
      • 1970-01-01
      • 2019-11-28
      • 2020-11-25
      • 1970-01-01
      • 2015-02-20
      相关资源
      最近更新 更多