删除2D数组Javascript中的重复数字

删除2D数组Javascript中的重复数字,javascript,arrays,Javascript,Arrays,我有一个2D数组,由数字数组组成,比如说 nonunique = [[1,2,3][2,3,4][1,5]]; 我想要一个包含所有唯一关键字的一维数组 unique = [1,2,3,4,5]; 现有的解决方案旨在匹配整个数组,而不仅仅是返回一维数字数组。在vanilla javascript中是否有此功能的快捷方式 我从stackoverflow尝试了这个reduce函数,但它似乎也过滤了一些不重复的值 unique = nonunique.reduce((acc, val) =>

我有一个2D数组,由数字数组组成,比如说

nonunique = [[1,2,3][2,3,4][1,5]];
我想要一个包含所有唯一关键字的一维数组

unique = [1,2,3,4,5];
现有的解决方案旨在匹配整个数组,而不仅仅是返回一维数字数组。在vanilla javascript中是否有此功能的快捷方式

我从stackoverflow尝试了这个reduce函数,但它似乎也过滤了一些不重复的值

unique = nonunique.reduce((acc, val) => acc.concat(val.filter((e)=>acc.includes(val))));
它不能正常工作,我也不知道如何修复它。我也试过了

unique = nonunique.filter(onlyUnique);

但是,firefox上似乎没有可用的过滤器(仅适用于ique)。

您应该使用
!附件包括(e)
(参见)使用集/线程使用这个:
Array.from(新集合(ununique.reduce(函数(acc,val){return acc.concat(val)},[]))