ES6 - set

455 阅读1分钟

hey ~ 我是肥阳,后期会持续更新,请记得点赞支持哟

  • set所有的元素都是唯一的 ,所以可以用 set 来做 数组去重

单个数组:

let arr = new Set([1, 1, 1, 2, 4, 58, 45]);
console.log(arr); //  { 1, 2, 4, 58, 45 }

多个数组:

let a = [1, 54, 47, 145, 15, 58];
let b = [10, 15, 14, 145, 88];
let c = new Set([...a, ...b]);
console.log(c); { 1, 54, 47, 145, 15, 58, 10, 14, 88 }
  • set 中添加元素
let a = new Set();
a.add('new');
a.add(1);
a.add(1);
a.add(3);
console.log(a); // { "new", 1, 3 }  这里就凸显了 set 元素唯一的特性
  • set 中删除元素
a.delete('new');
console.log(a.delete('old')) // false 因为 se 中没有 ‘old’
console.log(a); // { 1, 3 }
  • 判断元素是否存在
console.log(a.has(1)); // true
const.log(a.has('new')): // false 因已在上一步删除,所以返回false
  • set 清空
a.clear();
console.log(a); // { }
  • setArray 的相互转换

Array to Set

let b = new Set([1, 2, 3]);
console.log(b); // {1, 2, 3}

Set to Array

let dd = new Set([4, 5, 6])
console.log([...dd]); // [4, 5, 6]
console.log(Array.from(dd)); // [4, 5, 6]