Javascript 从复杂输出中删除空对象

Javascript 从复杂输出中删除空对象,javascript,Javascript,使用map(多个map在嵌套的json中获取必要的元素)函数,我试图根据所需的模板从Neo4j数据库获取输出。在最后一次映射期间,我正在构建所需输出的一部分,并将此存储在变量中: px.segments.map(function(pathSegment){ individual_path.push({

使用map(多个map在嵌套的json中获取必要的元素)函数,我试图根据所需的模板从Neo4j数据库获取输出。在最后一次映射期间,我正在构建所需输出的一部分,并将此存储在变量中:

 px.segments.map(function(pathSegment){                                                                                          
 individual_path.push({                          
 "start": pathSegment.start.properties.name,
 "weight": pathSegment.relationship.properties.Weight.low,
  "end": pathSegment.end.properties.name}); 
  })
然后,根据我在DB和Cypher查询中使用的内容,在某些情况下,我在执行时会得到:

 console.log(individual_path);
我得到的结果是:

 [ { start: 'title', weight: 39, end: 'metadata' } ]
 [ { start: 'title', weight: 39, end: 'metadata' } ]
 [ { start: 'title', weight: 39, end: 'metadata' } ]
 [ { start: 'title', weight: 39, end: 'metadata' },
   { start: 'metadata', weight: 39, end: 'filmID' } ]
 [ { start: 'title', weight: 39, end: 'metadata' },
   { start: 'metadata', weight: 39, end: 'filmID' } ]
 []
 [ { start: 'movieID', weight: 39, end: 'moviesSchema' } ]
 [ { start: 'movieID', weight: 39, end: 'moviesSchema' },
   { start: 'moviesSchema', weight: 39, end: 'title' } ]
 [ { start: 'movieID', weight: 39, end: 'moviesSchema' },
   { start: 'moviesSchema', weight: 39, end: 'title' },
   { start: 'title', weight: 39, end: 'metadata' } ]
我的目标是避免输出中可能出现的空对象,因为我需要在表单中使用它(开始:,权重:,结束:)。最后,我需要一些类似的东西(没有空):


忽略此答案-不正确 您可以在
单个路径
数组上使用
过滤器

var newObject = individual_path.filter(item => item.length > 0);
这将获得所有不是“空”的项。
请注意,这要求
单个路径
为数组数组。

您可以通过检查对象是否为空来筛选数组

let array=[{},{},{start:'title',weight:39,end:'metadata'},{start:'title',weight:39,end:'metadata'},{start:'title',weight:39,end:'metadata'},{},{start:'title',weight:39,end:'metadata'},{};
array=array.filter(obj=>Object.entries(obj).length!==0);

console.log(数组)
我相信您正在将其记录在一个循环中,只要通过
验证(单个路径.length){//array不是空的}
是的,您完全正确,这是一个循环,谢谢您的帮助!这不起作用,op有一个对象数组,而不是“数组数组”啊,你说得对!我以为他在展示一系列的对象作为回应!我不知道他举了很多例子。谢谢你的帮助!
var newObject = individual_path.filter(item => item.length > 0);