返回多个,大多是空的ID数组

时间:2018-01-27 20:58:03

标签: arrays json node.js apache-spark gulp

我是node.js的新手并且不可否认我可能正在努力学习,但我使用以下代码解析json,在相应{{1}时查找id包含nameuuid从另一个函数传递。

uuid

我希望这会返回类似var arrFound = Object.values(json).filter(function(obj) { return obj.id && obj.name.includes(uuid); }).map(function(obj) { return obj.id; }); console.log (arrFound); // array of matched id values 的内容。

相反,我得到了这个:

[ 'local-1517085058363' ]

json来自Spark HistoryServer API(http://127.0.0.1:18080/api/v1/applications),虽然它只是JSON,所以它不应该来自哪里。这是一个示例:

[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[]
[ 'local-1517085058363' ]
[ 'local-1517085058363' ]
[ 'local-1517085058363' ]
[ 'local-1517085058363' ]
[ 'local-1517085058363' ]
[ 'local-1517085058363' ]
[ 'local-1517085058363' ]
[ 'local-1517085058363' ]
[ 'local-1517085058363' ]

另外,我在Gulp上运行我的代码。我不确定这是否会有所不同。

如何修复此问题,以便只返回一个ID?

1 个答案:

答案 0 :(得分:0)

有多个阵列,因此可以解释它们的来源。我使用了reduce()来获取我正在寻找的对象。