ES6- Set与Map

Set(存放唯一的值)

  • Set 的属性和方法
let arr = [1,1,2,2,3,3,4,4];
let set1 = new Set(arr);
//1.获取Set长度——size,跟数组的 length相似
console.log(set1.size);//4
//2.给Set添加元素——add(),跟数组的push相似
set1.add(5);
console.log(set1);//{1, 2, 3, 4, 5}
//3.删除Set元素——delete();
set1.delete(2);
console.log(set1);//{1, 3, 4, 5}
//4.判断元素是否在Set中——has();
console.log(set1.has(2));//false
console.log(set1.has(4));//true
//5.清空Set——clear();
console.log(set.clear());

Set本质上也是对象,跟数组类似,但是Set中没有重复的元素,如果有,则自动删除

let arr = [1,1,2,2,3,3,4,4];
let set1 = new Set(arr);
console.log(arr);//[1, 1, 2, 2, 3, 3, 4, 4]
console.log(set1);//Set(4) {1, 2, 3, 4}
  • Set数组去重
let arr = [1,1,2,2,3,3,4,4];
let set1 = new Set1(arr);
arr = Array.from(set1);//set转数组 Array.from();
console.log(arr);// [1, 2, 3, 4]

Map

Map跟对象类型几乎一模一样,也是一种键值对的组合,但是Map键(key)可以是任何类型,包括数组和对象

  • Map 的属性和方法
//1.声明Map
let myMap = new Map();
//2.设置元素   set();
myMap.set(arr,'数组');
myMap.set(obj,123);
myMap.set(123,true);
//3.获取Map长度  size
console.log(myMap.size);//3
//4.获取指定key的value  get();
console.log(myMap.get(obj));//123
//5.根据指定的key删除元素 delete()
console.log(myMap.delete(arr));
console.log(myMap);
//6.根据指定key查找元素 has();
console.log(myMap.has(obj));//true
console.log(myMap.has(arr));//false(已经被删除)
//7.删除Map中所有元素
console.log(myMap.clear());
  • Map 拓展
//1.Map中的遍历器(迭代器)     keys();输出Map中所有的key
//2.values();输出Map中所有的value
//3.entries();同时输出Map中的key和value
  • 使用 forEah循环Map
myMap.forEach(value.key) =>{
    console.log(value,key);
   //第一个参数是value
   //第二个参数是 key
  //与参数名交什么无关
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容