new Set(),用来去重数组。
Set类似于数组,区别在于它所有的成员都是唯一的,不能有重复的值
数值去重:
let arr = [1, 2, 2, 3]; // [1, 2, 2, 3]
let set = new Set(arr); //去掉重复数据,返回结果是'set'
let newArr = Array.from(set); //将set转化为数组
console.log(newArr); // [1, 2, 3]
对象去重:
const b={a:2}
let arr = [{a:1}, b, b, {a:3}]; //[{a:1},{a:2},{a:2},{a:3}]
let set = new Set(arr);
let newArr = Array.from(set);
console.log(newArr); // [{a:1},{a:2},{a:3}]
无法对象去重:
let arr = [{a:1}, {a:2}, {a:2}, {a:3}]; //[{a:1},{a:2},{a:2},{a:3}]
let set = new Set(arr);
let newArr = Array.from(set);
console.log(newArr); //[{a:1},{a:2},{a:2},{a:3}]
//方法一 es6的...解构
let unique1 = [...setArr ]; //去重转数组后 [3,5,2]
//方法二 Array.from()解析类数组为数组
let unique2 = Array.from(setArr ) //去重转数组后 [3,5,2]