Javascript 将数组数组中的唯一值合并到数组
我有这样的数组:Javascript 将数组数组中的唯一值合并到数组,javascript,lodash,Javascript,Lodash,我有这样的数组: [ [ {id:1, name:'xxx'} ], [ {id:2, name:'xxx'}, {id:1, name:'xxx'} ], [ {id:2, name:'xxx'}, {id:1, name:'xxx'}, {id:3, name:'xxx'} ] ] [{id:1, name:'xxx'}, {id:2, name:'xxx'}, {id:3, name:'xxx'}] 我需要只拾取具
[
[
{id:1, name:'xxx'}
],
[
{id:2, name:'xxx'},
{id:1, name:'xxx'}
],
[
{id:2, name:'xxx'},
{id:1, name:'xxx'},
{id:3, name:'xxx'}
]
]
[{id:1, name:'xxx'}, {id:2, name:'xxx'}, {id:3, name:'xxx'}]
我需要只拾取具有唯一id的对象,并将它们合并到一个数组中。每个对象都有id
属性,因此我尝试了以下方法:
_.(data).union().uniqBy(o => o.id).value()
但它给了我错误的结果
我所需的输出应如下所示:
[
[
{id:1, name:'xxx'}
],
[
{id:2, name:'xxx'},
{id:1, name:'xxx'}
],
[
{id:2, name:'xxx'},
{id:1, name:'xxx'},
{id:3, name:'xxx'}
]
]
[{id:1, name:'xxx'}, {id:2, name:'xxx'}, {id:3, name:'xxx'}]
你能帮我吗?谢谢。用于将子数组合并到单个数组中,然后应用。.uniqBy()
:
const data=[[{“id”:1,“name”:“xxx”}],{“id”:2,“name”:“xxx”},{“id”:1,“name”:“xxx”}],{“id”:2,“name”:“xxx”},{“id”:1,“name”:“xxx”},{“id”:3,“name”:“xxx”}];
常量结果=(数据)
.flatte()
.uniqBy('id'))
.value();
控制台日志(结果)代码>
发布一个真实的示例(输入数据)和预期的结果。\uqby(\uu.flattedeep(数据),“id”)
会做你想做的吗?@CRice:我觉得似乎是对的。@Ele我编辑了问题,请检查。@CRice我会尝试并给你答复