21xrx.com
2024-12-23 08:24:34 Monday
登录
文章检索 我的文章 写文章
作为一名Web前端开发者
2023-06-18 07:27:38 深夜i     --     --

作为一名Web前端开发者,我经常会遇到需要对JavaScript数组进行去重的场景。在进行去重操作时,我们可以使用多种不同的方法。下面我来分享一下我常用的三种方法,让大家更好地理解JavaScript数组去重。

1. 使用Set数据结构去重

Set是ES6中引入的一种新的数据结构。它类似于数组,但它的每一个元素都是唯一的。利用这个特性,我们可以先将数组转换为Set,再将Set转换回数组,来达到数组去重的目的。具体实现如下:


let arr = [1, 2, 3, 3, 4, 5, 5, 6];

let newArr = [...new Set(arr)];

console.log(newArr); // [1, 2, 3, 4, 5, 6]

2. 使用for循环加indexOf去重

这种方法比较基础,是我们在学习JavaScript时常用的一种方法。它通过遍历原数组,将每个元素与新数组中的元素依次比较,如果新数组中不存在该元素,则将该元素加入新数组。具体实现如下:


let arr = [1, 2, 3, 3, 4, 5, 5, 6];

let 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, 6]

3. 使用reduce方法去重

reduce方法也是ES6中引入的,它可以实现对数组的迭代和归约处理。在进行数组去重时,我们可以利用reduce方法,将重复的元素去掉,只留下唯一的元素。具体实现如下:


let arr = [1, 2, 3, 3, 4, 5, 5, 6];

let newArr = arr.reduce(function(prev, cur) {

  if(prev.indexOf(cur) === -1) {

    prev.push(cur);

  }

  return prev;

}, []);

console.log(newArr); // [1, 2, 3, 4, 5, 6]

综上所述,我们可以看到,JavaScript数组去重有多种方法。每种方法都有其优劣之处,需要根据具体情况来选择最适合的方法。相信在今后的工作中,这些方法一定会帮到大家。

标题:JavaScript数组去重方法大全

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复