本文提供了 4 种 javascript 数组去重方法:使用 set 数据结构、使用 object、使用 filter 方法、以及使用 reduce 方法。这些方法都能有效地移除数组中重复的元素,生成一个不包含重复元素的新数组。
如何使用 JavaScript 数组去重
引言
JavaScript 数组中可能会包含重复的元素,在某些情况下,我们需要对其进行去重操作,以获得一个不包含重复元素的新数组。
方法
1. Set
Set 数据结构具有自动去重功能,我们可以利用它来实现数组去重:
const arr = [1, 2, 3, 4, 5, 1, 2]; const uniqueArr = [...new Set(arr)]; console.log(uniqueArr); // [1, 2, 3, 4, 5]
登录后复制
2. Object
对象中的键是唯一的,我们可以利用此特性来去重数组中的元素:
const arr = [1, 2, 3, 4, 5, 1, 2]; const uniqueArr = []; const obj = {}; arr.forEach(item => { if (!obj[item]) { obj[item] = true; uniqueArr.push(item); } }); console.log(uniqueArr); // [1, 2, 3, 4, 5]
登录后复制
3. Filter
另一种方法是使用 filter 方法,它允许我们根据条件过滤数组中的元素:
const arr = [1, 2, 3, 4, 5, 1, 2]; const uniqueArr = arr.filter((v, i, a) => a.indexOf(v) === i); console.log(uniqueArr); // [1, 2, 3, 4, 5]
登录后复制
4. Reduce
Reduce 方法也可以用于去重数组,将其累积为一个不包含重复元素的新数组:
const arr = [1, 2, 3, 4, 5, 1, 2]; const uniqueArr = arr.reduce((acc, cur) => { if (!acc.includes(cur)) { acc.push(cur); } return acc; }, []); console.log(uniqueArr); // [1, 2, 3, 4, 5]
登录后复制
以上就是js怎么去重数组的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:木子,转转请注明出处:https://www.dingdanghao.com/article/570505.html