这篇文章主要介绍“ES6数组去重的方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“ES6数组去重的方法有哪些”文章能帮助大家解决问题。

5种方法:1、用Set结构和Array.from(),语法“Array.from(new Set(arr))”;2、用Set结构和扩展运算符,语法“[…new Set(arr)]”;3、遍历数组,在循环体中利用indexOf()去重等。

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

ES6数组去重的5种方法

1、Set数据结构和Array.from()去重

let arr=[1,2,3,3,2,"1",0,undefined,undefined];
let newArr=Array.from(new Set(arr));
console.log(newArr);

ES6数组去重的方法有哪些-风君雪科技博客

2、Set数据结构和扩展运算符“…”去重

let arr=[1,2,3,3,2,"1",0,1,2];
let newArr=[...new Set(arr)];
console.log(newArr);

ES6数组去重的方法有哪些-风君雪科技博客

3、利用单层循环 + indexOf 去重

var arr=[1,2,3,3,2,"1",0,1,2,undefined,undefined];
var newArr = [];
for(let i = 0;i <arr.length;i++){
    if(newArr.indexOf(arr[i]) ===-1) {
      newArr.push(arr[i]);
    }
}
console.log(newArr);

ES6数组去重的方法有哪些-风君雪科技博客

4、利用数组的 includes 方法去重

var arr=[1,2,3,3,2,"1",0,1,2,undefined,undefined];
var newArr = [];
for(let i = 0;i <arr.length;i++){
  if(!newArr.includes(arr[i])){
    newArr.push(arr[i]);
  }
}
console.log(newArr);

ES6数组去重的方法有哪些-风君雪科技博客

5、利用数组的 filter 方法去重

var arr=[1,2,3,3,2,"1",0,1,2,undefined,undefined];
var newArr = arr.filter((item,index)=> {
  return arr.indexOf(item,0) === index;
});
console.log(newArr);

ES6数组去重的方法有哪些-风君雪科技博客