我正在使用Angular8,想要从数组中删除空对象,并获取其长度。
Array: [
{data01: "abc", data02: "cde", data03: "fgh", data04: "", data05: ""},
{data01: "abc", data02: "cde", data03: "", data04: "", data05: ""},
{data01: "abc", data02: "cde", data03: "fgh", data04: "ijk", data05: "lmn"},
{data01: "abc", data02: "", data03: "", data04: "", data05: ""},
]
然后我希望它变成这样
Array: [
{data01: "abc", data02: "cde", data03: "fgh"},
{data01: "abc", data02: "cde"},
{data01: "abc", data02: "cde", data03: "fgh", data04: "ijk", data05: "lmn"},
{data01: "abc"},
]
有没有什么方法可以实现?
我尝试将这些元素推到一个新数组中,如下所示:
_Array: ["abc","cde", "fgh", "", "", ....]
尝试将其分为5个块, 然后使用filter(Boolean)进行过滤,虽然有效,但性能有点慢,是否有其他方法可以改善性能?
arr.map(i => Object.entries(i).filter(([k,v]) => v).reduce((acc,[k,v]) => ({...acc, [k]: v}), {}))
- Amir Popovich