0
这个问题出现了很多,但我的具体情况似乎没有被任何我回顾的答案覆盖。我有一个多维数组与我想删除一些重复数组。删除多维重复数组
[
[8, 12],
[8, 17],
[8, 92],
[8, 12]
]
[8, 12]
出现两次。我怎样才能删除这个重复?
这个问题出现了很多,但我的具体情况似乎没有被任何我回顾的答案覆盖。我有一个多维数组与我想删除一些重复数组。删除多维重复数组
[
[8, 12],
[8, 17],
[8, 92],
[8, 12]
]
[8, 12]
出现两次。我怎样才能删除这个重复?
什么如下:
var array1 = [[8,12],[8,17],[8,92],[8,12]];
var array2 = new Array();
for (var i=0; i<array1.length; i++) {
var e1 = array1[i];
var exists = false;
for (var j=0; j<array2.length; j++) {
if (array2[j][0] == e1[0] && array2[j][1] == e1[1]) exists = true;
}
if (exists == false) {
array2[array2.length] = e1;
}
}
的数组2现在阵列1没有重复。这对于实时游戏编程应该是太慢了,但它应该工作。我很抱歉,如果我写错了什么,这不是故意的。我没有测试代码。
它工作:)(复制粘贴在铬的JavaScript控制台) –
你尝试过什么吗?你有性能限制和非常大的数组吗? –
您可以遍历它们,创建一个新数组,并在添加它之前检查每个元素是否存在于新数组中。 – Ibu
你认为还有其他SO帖子吗?他们都应该工作,只有你需要改变比较,以便它认为相似(但不相同)的数组相等。 – Bergi