Javascript 如何删除阵列中的重复阵列?

Javascript 如何删除阵列中的重复阵列?,javascript,Javascript,如何从给定阵列中删除重复阵列?数组的前两个元素相同。我无法用集合修复它。使用方法filter() const arr=[[1,2]、[1,2]、[3,4]、[7,7]; 常量arrNoDouble=arr.filter((a={},b=>!(a[b]=a中的b)); log(JSON.stringify(arrNoDouble))您可以使用此方法创建一个新数组newarr,而无需从当前数组arr中复制: const arr=[[1,2]、[1,2]、[3,4]、[7,7]; 常数m={} c

如何从给定阵列中删除重复阵列?数组的前两个元素相同。我无法用集合修复它。

使用方法
filter()

const arr=[[1,2]、[1,2]、[3,4]、[7,7];
常量arrNoDouble=arr.filter((a={},b=>!(a[b]=a中的b));

log(JSON.stringify(arrNoDouble))
您可以使用此方法创建一个新数组
newarr
,而无需从当前数组
arr
中复制

const arr=[[1,2]、[1,2]、[3,4]、[7,7];
常数m={}
const newarr=[]

对于(设i=0;i最简单的方法:

const arr=[
[1, 2],
[1, 2],
[3, 4],
[7, 7]
];
const newArr=Array.from(新集合(arr.map(JSON.stringify)),JSON.parse)

console.log(newArr)
您可以使用
JSON.stringify
将数组数组转换为字符串数组。这样,
Set
的过滤魔法就可以正确过滤原始值

const arr=[[1,2]、[1,2]、[3,4]、[7,7];
让el=arr.map(a=>JSON.stringify(a));
设定=新设定(el);
让unique=Array.from(set,JSON.parse);
//一班轮
让uniqueArr=Array.from(新集合(arr.map(JSON.stringify)),JSON.parse);

控制台日志(uniqueArr)你想要一个通用的解决方案还是只为包含数字的子数组条目?如果只对数字,我们需要考虑<代码>楠< /Cord>值吗?这是有效的,因为将数组设置为对象中的一个键,你隐式地转换为字符串和比较字符串。这很好,但是答案可能是我们。e一些解释,因为它一点也不明显。如果应用于字符串数据,这是危险的。
[1,2]
(或
[“1”,“2”]
)将转换为与
[“1,2”]
相同的格式,当它们不相同时,这两种格式被视为“等效”。与
[“3,4”,“5”]
[“3”,“4”,“5”]
相同。这就是
[…新建映射(arr.Map(x=>[JSON.stringify(x),x])).values()
以避免
JSON.parse
const arr = [[1, 2], [1, 2], [3, 4], [7, 7]];