千锋教育-做有情怀、有良心、有品质的职业教育机构

当前位置:首页  >  IT技术问答  > js数组中去除重复值的几种方法是什么?

js数组中去除重复值的几种方法是什么?

我要提问
3个回答 2023-06-07 11:11:00

js数组中去除重复值的几种方法是什么?

推荐答案

  在JavaScript中,可以使用多种方法去除数组中的重复值:

  使用 Set 对象:Set 对象是一种集合类型,能够快速去除重复值。可以通过将数组作为 Set 的构造函数的参数来创建 Set 对象,最后将 Set 对象转换为数组即可。

const arr = [1, 2, 3, 3, 2, 4, 5];
const uniqueArray = Array.from(new Set(arr));

   使用 indexOf() 方法:在循环遍历数组时,使用 indexOf() 方法来判断一个值是否已经存在于已筛选的数组中。

const arr = [1, 2, 3, 3, 2, 4, 5];
const uniqueArray = [];
for(let i = 0; i < arr.length; i++){
if(uniqueArray.indexOf(arr[i]) === -1){
uniqueArray.push(arr[i]);
}
}

   使用 includes() 方法:同样在循环遍历数组时,可以使用 includes() 方法来判断一个值是否已经存在于已筛选的数组中。

const arr = [1, 2, 3, 3, 2, 4, 5];
const uniqueArray = [];
for(let i = 0; i < arr.length; i++){
if(!uniqueArray.includes(arr[i])){
uniqueArray.push(arr[i]);
}
}

   使用 filter() 方法:使用 filter() 方法对数组进行筛选,只保留第一次出现的值。

const arr = [1, 2, 3, 3, 2, 4, 5];
const uniqueArray = arr.filter((value, index, self) => {
return self.indexOf(value) === index;
});

   使用 reduce() 方法:使用 reduce() 方法遍历数组,只保留第一次出现的值。

const arr = [1, 2, 3, 3, 2, 4, 5];
const uniqueArray = arr.reduce((unique, item) => {
return unique.includes(item) ? unique : [...unique, item];
}, []);

   以上这些方法都可以实现数组去除重复值,可以根据实际情况选择相应的方法。

其他答案

  • 在 JavaScript 中,可以使用扩展运算符和 Set 对象等方式去除数组中的重复值,使用 Set 对象、使用 indexOf()、使用 includes()、使用 filter()。以上是 JS 数组中去重的常见方法,根据数据规模、性能要求以及代码简易度等方面,进行选择合适的去重算法。

  • JavaScript 的 Set 类型可以自动去除掉数组中的重复元素,使用 Set 实现数组去重方法非常简单,在代码中,首先将数组 arr 转换成 Set 集合,模拟集合的唯一性特性自动去重后,再将 Set 集合转换回数组形式,得到去重后的结果数组 uniqueArr。

是否还存在以下困惑

  • it培训班靠谱么?培训班学费是多少?
  • 学Java工资待遇咋样?
  • 学Java工资待遇咋样?
  • web前端自学好还是培训好?
  • IT小白如何快速成长?
  • 学完Python可以找哪些工作?
  • 零基础参加软件测试培训都学什么?
  • 什么人适合学UI设计?
  • 大数据的发展趋势怎么样?

专业导师线上坐镇 解答个性化学习难题

点击立即咨询