如何从给定数组中提取json值

时间:2018-01-15 14:13:06

标签: json

我有来自插件的返回json行 - pannellum(360插件)。我需要从词汇表中提取一些值。

JSON

"hs2": {
  "title": "Toilet",
  "hfov": "110",
  "pitch": "-3",
  "yaw": "130",
  "type": "equirectangular",
  "panorama": "\/photos\/The-Peaks-Residence-Toilet-5a58b8ed2cb23.jpg",
  "hotSpots": [{
        "id": "33",
        "sid": "c8d9a346d2ce26c1be59d4f04938a9ce",//I need this
        "pitch": "-8.3325218",
        "yaw": "151.990469",
        "type": "scene",
        "text": "Door Way",
        "sceneId": "hs1"//I need this
      },

响应中有几个这样的设置。还有我需要的sidsceneId等字段。请找到sample here以获取完整的代码。

说实话,我不知道从哪里开始。我能想到的只是  console.log(hotSpots.sid) 但它不起作用。所以,请帮帮我。

PS.I我在这里小提琴:https://jsfiddle.net/ajsLdp5b/1/

2 个答案:

答案 0 :(得分:0)

hotSpots包含一个数组。 所以它是

hotSpots[0].sid

这意味着

hs2.hotSpots[0].sid

据我所见

答案 1 :(得分:0)

在您的情况下,创建一个与您要提取的数据匹配的对象/模型,然后在其中推送您的值。在我的例子中,我只是在Sid列表中获取sid。

let hotSpotSidList = []
hs2.hotspots.forEach((spot) => { 
   hotSpotSidList.push(spot.sid);
});