有三个对象数组是这样的:JS/ES6:检查每个数组元素,在另一个数组孩子
sections = [{ _id: '123'}]
groups = [{ _id: '456', parent: '123' }]
items = [{ _id: '789', parent: '456' }]
这是一个有效的数据集。当然,数组中有多个对象。
现在我想检查每个部分是否至少有一个孩子组,每个组最少有一个项目。 如果检查失败,应返回false
值。
例
sections = [{ _id: '123'}]
groups = [{ _id: '456', parent: '123' }]
items = [{ _id: '789', parent: 'something' }]
complete = false
在该示例中假应返回,因为没有该组的子项。
我试着开始一个foreach循环,但是这是一个错误的尝试:
let complete = true
sections.forEach(s => {
if (groups.filter(g => { return g.parent === s._id }).length === 0)
complete = false
})
是正确的说,'section'是'groups'的父母和'groups'是'items'的家长吗?并且你期望每个'section'都将他们的id注册为一个或多个'group'的父属性,以此类推 - 对于groups - > items?否则,它是不完整的? –
是的,那是正确的 – user3142695