阅读量:1
在ES6中,有以下几种方法可以对数组对象进行去重:
- 使用Set:Set是ES6中新增的数据结构,它可以保证集合中的元素都是唯一的,可以使用Set去除数组中的重复项,然后再将Set转换回数组。示例代码如下:
const arr = [1, 2, 3, 3, 4, 5, 5]; const uniqueArr = [...new Set(arr)]; console.log(uniqueArr); // [1, 2, 3, 4, 5]
- 使用Array.from()和Set:可以先使用Array.from()将数组转换为Set,再将Set转换回数组。示例代码如下:
const arr = [1, 2, 3, 3, 4, 5, 5]; const uniqueArr = Array.from(new Set(arr)); console.log(uniqueArr); // [1, 2, 3, 4, 5]
- 使用filter()方法:可以使用filter()方法遍历数组,保留第一次出现的元素,过滤掉后面重复出现的元素。示例代码如下:
const arr = [1, 2, 3, 3, 4, 5, 5]; const uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index); console.log(uniqueArr); // [1, 2, 3, 4, 5]
- 使用reduce()方法:可以使用reduce()方法遍历数组,将每个元素添加到结果数组中,但是只添加第一次出现的元素,过滤掉后面重复出现的元素。示例代码如下:
const arr = [1, 2, 3, 3, 4, 5, 5]; const uniqueArr = arr.reduce((result, item) => { if (!result.includes(item)) { result.push(item); } return result; }, []); console.log(uniqueArr); // [1, 2, 3, 4, 5]
这些方法都可以有效地对数组对象进行去重操作。