新闻资讯

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻资讯列表

es6数组和对象去重的有哪些方法,es6数组对象去重的5种方法

发布时间:2023-12-23 22:23:14

es6数组和对象去重的有哪些方法

在ES6中,可使用Set数据结构来实现数组和对象的去重。Set是一种特殊的数据结构,它只存储唯一的值,不会出现重复。

对数组去重,可以将数组转换为Set,然后再将Set转换回数组便可去除重复值。例如:

const array = [1, 2, 3, 3, 4, 5, 5];
const uniqueArray = [...new Set(array)];
console.log(uniqueArray); // [1, 2, 3, 4, 5]

对对象去重,可以先将对象转换为字符串,然后再利用Set去重,最后再将字符串转换回对象。例如:

const array = [
  { id: 1, name: 'Alice' },
  { id: 2, name: 'Bob' },
  { id: 1, name: 'Alice' },
  { id: 3, name: 'Charlie' }
];

const uniqueArray = Array.from(new Set(array.map(JSON.stringify))).map(JSON.parse);
console.log(uniqueArray);
// [
//   { id: 1, name: 'Alice' },
//   { id: 2, name: 'Bob' },
//   { id: 3, name: 'Charlie' }
// ]

需要注意的是,Set只能去除基本类型值的重复,对复杂类型的值,如对象,需要先将其转换为字符串再进行去重。