Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何检索嵌套的JSON值_Json - Fatal编程技术网

如何检索嵌套的JSON值

如何检索嵌套的JSON值,json,Json,我有一个空闲的JSON对象,我想取Microsoft.VSTS.Scheduling.RemainingWork的值 [ { "id": 13, "rev": 12, "fields": { "System.Id": 13, "Microsoft.VSTS.Scheduling.RemainingWork

我有一个空闲的JSON对象,我想取
Microsoft.VSTS.Scheduling.RemainingWork的值

  [
      {
        "id": 13,
        "rev": 12,
        "fields": {
          "System.Id": 13,
          "Microsoft.VSTS.Scheduling.RemainingWork": 32,
          "Microsoft.VSTS.Scheduling.CompletedWork": 20
        },
        "url": "https://dev.azure.com/.../_apis/wit/workItems/13"
      }
    ]
我能够检索数据,直到某个时刻:

console.log("object of json : ",result);
console.log("result[0] : ", result[0])
console.log("result[0].fields : ", result[0].fields)
控制台输出为


但我认为这不起作用。结果[0]。字段。Microsoft.VSTS.Scheduling.RemainingWork

您可以像关联数组一样访问数据:

  [
      {
        "id": 13,
        "rev": 12,
        "fields": {
          "System.Id": 13,
          "Microsoft.VSTS.Scheduling.RemainingWork": 32,
          "Microsoft.VSTS.Scheduling.CompletedWork": 20
        },
        "url": "https://dev.azure.com/.../_apis/wit/workItems/13"
      }
    ]
result[0].fields['Microsoft.VSTS.Scheduling.RemainingWork']

您可以像访问关联数组一样访问数据:

result[0].fields['Microsoft.VSTS.Scheduling.RemainingWork']
你需要使用

result[0].fields["Microsoft.VSTS.Scheduling.RemainingWork"]
基本上当你使用

result[0].fields.Microsoft.VSTS.Scheduling.RemainingWork
每次使用“.”时,都试图从嵌套对象中获取值,如下所示-

[
      {
        "id": 13,
        "rev": 12,
        "fields": {
          "System.Id": 13,
          "Microsoft": {
              "VSTS": {
                  "Scheduling": {
                      "RemainingWork": 32
                   }
               }
          },
          "Microsoft.VSTS.Scheduling.CompletedWork": 20
        },
        "url": "https://dev.azure.com/.../_apis/wit/workItems/13"
      }
    ]
这是不正确的,因为这不是数据的结构方式。

您需要使用

result[0].fields["Microsoft.VSTS.Scheduling.RemainingWork"]
基本上当你使用

result[0].fields.Microsoft.VSTS.Scheduling.RemainingWork
每次使用“.”时,都试图从嵌套对象中获取值,如下所示-

[
      {
        "id": 13,
        "rev": 12,
        "fields": {
          "System.Id": 13,
          "Microsoft": {
              "VSTS": {
                  "Scheduling": {
                      "RemainingWork": 32
                   }
               }
          },
          "Microsoft.VSTS.Scheduling.CompletedWork": 20
        },
        "url": "https://dev.azure.com/.../_apis/wit/workItems/13"
      }
    ]
这是不正确的,因为这不是数据的结构方式