从json对象中提取数据字段

时间:2016-01-23 17:25:18

标签: javascript arrays json

我一直在阅读我能找到的所有相关内容,但没有一个解决方案能够提供我需要的答案。

具体来说,我仔细阅读了这篇Access / process (nested) objects, arrays or JSON以及其他几十篇文章。

这是我想要完成的事情:

我有一个名为allData的大对象 - 我从MongoDB获得了一个json对象,它包含了每个读取数据的所有数据。

{pitch: -7.97, roll: -4.3, temp: 98, yaw: -129.83, time: "01/22/2016 17:28:47", …}
{pitch: -8.04, roll: -4.41, temp: 97, yaw: -130.81, time: "01/22/2016 17:28:58", …}

... 我喜欢做的是能够用allData.pitch的行提取所有音高读数,但显然不起作用,因为每个数据读数都在allData的元素中。 {1}}数组。所以我可以循环完成allData[x].pitch,但我希望能做到更清晰,更快捷的方法 - 因为我可能想要提取每种类型的数据。

不幸的是,在这一点上,我没有能力简单地从数据库请求音高数据,所以我得到了整套服务。

最后一个问题是上面数组中的一个元素已经是数据对象。

2 个答案:

答案 0 :(得分:2)

您可以将Array.prototype.map()用于此

var pitches = allData.map(function(d) {
                  return {
                      "pitch": d.pitch,
                      "time": d.time
                  };
              });

答案 1 :(得分:0)

如果您无法控制从服务器返回的数据(即,只检索您想要的音高值),您将不得不循环以获取它们。