首页 > 解决方案 > 从Javascript中的对象数组中过滤未定义

问题描述

我无法undefined从本地存储中创建的对象数组中整理出来。让我们假设这个对象数组是 localStorage:

var arrObject = [{date: undefined, bus_name: Thomas #1};...]假设这有 2 个未定义的日期。

我希望能够过滤掉未定义的日期和日期内的 bus_name,例如,如果我在对对象数组进行排序之前使用过滤器,那么{date: undefined, bus_name: Thomas #1}将不会包含在将要排序的数组中.

我将如何做到这一点?

谢谢!

更新:20 年 3 月 5 日

如果我有超过 2 个列,我将如何完成此操作,假设我至少有 5 个,我想过滤和排序日期以及仅输出日期和 bus_name

var arrObject = [{date: undefined, bus_name: Thomas #1, bus_driver: Thomas, time_start: 9AM, time_end: 5PM};...]

输出:{date: ..., bus_name:...}; {...}

标签: javascriptarraysobject

解决方案


我认为您应该提供带有条件字段的过滤器(一个是日期,另一个是 bus_name )

无论如何,我想清除它:-

 i) arrObject.filter(e => e.date)  // with this all {date: undefined } contain object will be filter and get data which have actual date value 

 ii) arrObject.filter(e => e.date === undefined) // give filter result with all date undefined  
iii) arrObject.filter(e => e.date === undefined && e.bus_name ) or arrObject.filter(e => e.date && e.bus_name)

您期待哪一个结果


推荐阅读