温馨提示×

es6数组对象去重的方法是什么

es6
小亿
103
2023-11-10 17:54:12
栏目: 编程语言

ES6数组对象去重的方法有多种,以下是其中几种常用的方法:

  1. 使用Set:可以通过将数组转换为Set来实现去重。Set是ES6新增的数据结构,它允许你存储任何类型的唯一值。可以通过展开运算符(…)将数组转换为Set,然后再将Set转换回数组即可。
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5]
  1. 使用Array.filter():可以使用Array.filter()方法结合indexOf()方法来实现去重。Array.filter()方法会创建一个新数组,其中包含满足条件的所有元素。可以使用indexOf()方法检查元素在数组中的索引,如果索引等于当前遍历的索引,则表示该元素在数组中是唯一的。
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = arr.filter((value, index, self) => {
  return self.indexOf(value) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
  1. 使用Array.reduce():可以使用Array.reduce()方法结合includes()方法来实现去重。Array.reduce()方法将数组中的每个元素依次传入回调函数,并将回调函数的返回值作为下一次调用的累加器。可以在回调函数中使用includes()方法检查累加器中是否已经包含了当前元素,如果不包含则将其添加到累加器中。
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = arr.reduce((accumulator, currentValue) => {
  if (!accumulator.includes(currentValue)) {
    accumulator.push(currentValue);
  }
  return accumulator;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]

以上是几种常用的ES6数组对象去重的方法,根据具体的需求和性能要求选择合适的方法。

0