访问对象属性反应



我有一个看起来像

的服务器的响应
[  
   {  
      "metric":{  
         "id":"b66178b8-dc18-11e8-9f8b-f2801f1b9fd1",
         "name":"Detector de fum bucatarie",
         "metricValueType":"DOUBLE",
         "metricType":"DEVICE_VALUE",
         "groupUUID":null,
         "projectUUID":null,
         "companyUUID":"ccab28ed-3dcf-411f-8748-ec7740ae559c",
         "unit":null,
         "formula":null
      },
      "data":{  
         "1550150771819":"10.310835857351371"
      }
   }
]

数据属性包含带时间戳和值的哈希图。当我尝试获得任何值时,我会恢复此错误:

myErrorTypeError: undefined is not an object (evaluating 'metricValues.metric.id')

如何访问属性?我尝试了这两种方法:

metricValues.metric.id

metricValues["metric"]["id"]

如何获得hashmap值?我已经尝试了:

const timestamp = Object.keys(metricValues.data)[0];
const values = Object.values(metricValues.data)[0];

您的数据是对象的数组。因此,即使您的数据只有一个对象,但它仍然是一系列对象。您的对象是数组的索引0。您可以按以下方式访问公制ID,

metricvalues [0] .metric.id

尝试此(放置 [0]

metricValues[0].metric.id

服务器中的响应是一个数组。公制对象位于该数组的第一个元素中。

要访问您需要传递该对象的索引中存在的索引中的ID。

这就是为什么使用:

metricValues[0].metric.id

相关内容

  • 没有找到相关文章

最新更新