【发布时间】:2021-12-25 12:00:58
【问题描述】:
我需要过滤掉名为arr的数组中的空数组。
这是我console.log([arr])时看到的:
我试过console.log([arr].filter(arr => arr.length > 0)),但没有成功(得到[])
【问题讨论】:
-
看来
arr实际上是一个对象,而不是一个数组。你已经通过将它包含在一个数组中来创建一个数组([arr]- 一个长度为 1 的数组,其唯一元素是arr)但这有点奇怪,实际上并没有帮助。 -
arr 是一个具有一些数组属性的对象。要删除长度为 0 的属性吗?
-
对象内的所有其他数组再次包含在另一个数组中,因此您需要获取对象中的值(即数组),然后获取该数组中数组的长度
-
试试这个
console.log(Object.values(arr).filter(i => i[0].length))
标签: javascript arrays object filter javascript-objects