js中数组去重的方法

原创
ithorizon 1个月前 (10-19) 阅读数 27 #Javascript
在 javascript 中,从数组中删除重复项的方法包括:使用 set()、使用 filter() 检查索引、使用 foreach() 检查索引、使用 reduce() 累积不重复值。

如何在 JavaScript 中从数组中删除重复项

在 JavaScript 中,从数组中删除重复项有以下几种常见方法:

1. 使用 Set()

Set() 是一个内置集合,它可以自动删除重复值。使用 Set() 从数组中删除重复项的步骤如下:

const arr = ['a', 'b', 'c', 'a', 'd'];
const uniqueArr = [...new Set(arr)]; // [ 'a', 'b', 'c', 'd' ]

2. 使用 filter()

filter() 方法可以过滤数组中的元素,并返回一个新数组,其中只包含满足给定条件的元素。要使用 filter() 从数组中删除重复项,可以如下使用:

const arr = ['a', 'b', 'c', 'a', 'd'];
const uniqueArr = arr.filter((item, index, self) => self.indexOf(item) === index); // [ 'a', 'b', 'c', 'd' ]

3. 使用 forEach() 和 index

可以使用 forEach() 方法遍历数组中的每个元素,并使用索引来检查是否已包含该元素。如果已包含,则将其从数组中删除。

const arr = ['a', 'b', 'c', 'a', 'd'];
arr.forEach((item, index, self) => {
  if (self.indexOf(item) !== index) {
    arr.splice(index, 1);
  }
}); // [ 'a', 'b', 'c', 'd' ]

4. 使用 reduce()

reduce() 方法可以将数组中的元素累积为一个最终值。要使用 reduce() 从数组中删除重复项,可以如下使用:

const arr = ['a', 'b', 'c', 'a', 'd'];
const uniqueArr = arr.reduce((acc, item) => {
  if (!acc.includes(item)) {
    acc.push(item);
  }
  return acc;
}, []); // [ 'a', 'b', 'c', 'd' ]

以上就是js中数组去重的方法的详细内容,更多请关注IT视界其它相关文章!



热门