📌  相关文章
📜  删除重复的数组 - Javascript (1)

📅  最后修改于: 2023-12-03 15:07:16.402000             🧑  作者: Mango

删除重复的数组 - Javascript

在开发过程中,我们经常需要对数组进行去重操作,以保证数据的准确性。下面介绍几种常见的JavaScript去重方法。

方法一:使用Set对象
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const newArr = [...new Set(arr)];
console.log(newArr); // [1, 2, 3, 4, 5]

该方法首先使用Set对象去重,然后使用数组扩展运算符将去重后的数据转化为数组。

方法二:使用indexOf
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const newArr = [];
for(let i=0; i<arr.length; i++) {
  if(newArr.indexOf(arr[i]) === -1) {
    newArr.push(arr[i]);
  }
}
console.log(newArr); // [1, 2, 3, 4, 5]

该方法使用数组的indexOf方法查找数组中是否包含当前项,如果不包含,则将该项添加到新数组中。

方法三:使用includes
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const newArr = [];
for(let i=0; i<arr.length; i++) {
  if(!newArr.includes(arr[i])) {
    newArr.push(arr[i]);
  }
}
console.log(newArr); // [1, 2, 3, 4, 5]

该方法使用数组的includes方法判断数组中是否包含当前项,如果不包含,则将该项添加到新数组中。

方法四:使用filter
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const newArr = arr.filter((item, index) => arr.indexOf(item) === index);
console.log(newArr); // [1, 2, 3, 4, 5]

该方法使用数组的filter方法过滤出满足条件的项,其中利用indexOf方法判断当前项是否为第一次出现。

综上所述,以上四种方法均可以实现数组去重,开发者可以根据自身需求选择其中一种方法进行使用。