js 如何快速去重
- 使用 Set 数据结构
Set 是 ES6 中新增的数据结构,可以用来存储一组不重复的值。可以将一个数组转换为 Set,然后再将 Set 转换回数组,就可以去掉数组中的重复值了。
示例代码:
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = [...new Set(arr)]; // [1, 2, 3, 4, 5]
- 使用 filter 方法
利用 filter 方法可以快速去重,遍历数组,如果当前元素在数组中第一次出现的位置等于当前位置,则保留该元素,否则过滤掉。
示例代码:
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index); // [1, 2, 3, 4, 5]
- 使用 reduce 方法
reduce 方法可以将数组转换为任何类型的值,也可以用来去重。遍历数组,如果当前元素在数组中第一次出现的位置等于当前位置,则将该元素加入累加器中,否则跳过。
示例代码:
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = arr.reduce((acc, cur) => acc.includes(cur) ? acc : [...acc, cur], []); // [1, 2, 3, 4, 5]
以上三种方法都可以快速去重,具体选择哪一种取决于个人喜好和实际情况。
原文地址: https://www.cveoy.top/t/topic/bru7 著作权归作者所有。请勿转载和采集!