【发布时间】:2023-01-11 13:37:18
【问题描述】:
我需要从 JavaScript 中的二维数组中删除类似的重复项以及真正的重复项。
let a = [
[5, 6],
[1,1],
[6,5],
[1,1],
[3,2],
[2,3]
]
function makeUnique(arr) {
var uniques = [];
var itemsFound = {};
for(var i = 0, l = arr.length; i < l; i++) {
var stringified = JSON.stringify(arr[i]);
if(itemsFound[stringified]) continue;
uniques.push(arr[i]);
itemsFound[stringified] = true;
}
return uniques;
}
a=makeUnique(a)
console.log(a);
我有这个输出:
[ [ 5, 6 ], [ 1, 1 ], [ 6, 5 ], [ 3, 2 ], [ 2, 3 ] ]
正确的应该是:
[ [ 5, 6 ], [ 1, 1 ], [ 2, 3 ] ]
我的代码正确地删除了重复项,但我也需要删除类似的重复项。
例如,如果我有 [3,2] 和 [2,3],我应该删除 [3,2](具有更大起始索引值的那个。)
你能帮我解决这个问题吗?
【问题讨论】:
标签: javascript arrays multidimensional-array