javascript - 如何在Javascript中从二维数组中过滤重复的整数和字符串子数组

标签 javascript arrays multidimensional-array data-structures

我收到一个由整数和字符串组成的二维数组,我想从中删除重复项:

原始数组 = [["admin", 2, "regular"], ["customer", "regular"], ["regular", "customer"], [1], ,["admin "], [1], ["管理员"]

预期结果 = [["admin", 2, "regular"], ["customer", "regular"], [1], ["admin"]]

请问我怎样才能用 Javascript 做到这一点?

最佳答案

如果你的数组(及其子数组)被重新排序,这有关系吗?如果没有,那么:

var array = [["admin", 2, "regular"], ["customer", "regular"], ["regular", "customer"], [1],["admin"], [1], ["admin"]];

array = array.map(x => x.sort()).sort();

var uniqueArray = [];
uniqueArray.push(array[0]);

for (var i = 1; i < array.length; i++){
  if (JSON.stringify(array[i]) != JSON.stringify(array[i-1])){
      uniqueArray.push(array[i]);
      }
}

console.log(uniqueArray);

关于javascript - 如何在Javascript中从二维数组中过滤重复的整数和字符串子数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45372251/

相关文章:

javascript - 通过 ajax 加载内容时 jQuery 的本地时间插件失败

php - 在PHP中打印多维数组的内容

c# - 单词搜索拼图的标签间距不均匀

javascript - console.log打印两次并且map在reactjs/mobx项目中不起作用

javascript - Framework7 在页面之间将对象作为参数传递

ios - iOS 上数组的 Swift metal 并行求和计算

arrays - 为什么将一个值附加到散列中的数组也会修改已分配给它的其他变量?

php - 比较两个关联二维数组之间的差异,并在用默认值填充一个数组后,丢弃没有差异的行

java - For循环关闭/退出应用程序

javascript - 从保存的 Canvas 图像中找不到 SOI