JavaScript进阶之浅谈Set集合

JavaScript进阶之浅谈Set集合

  • Set集合概述
  • Set集合的属性和方法(常用)
    • size属性
    • add方法
    • delete方法
    • has方法
    • clear方法
    • forEach方法

Set集合概述

Set集合和Arry数组很相似,但是Set集合存储的是key也就是说Set集合中不可以存在两个值和数据类型都相等的key
Set集合不可以用下标取值
Set集合没有length属性而是size
Set集合可以通过Array.from转为真正的数组

Set集合的属性和方法(常用)

名称 参数 类型 说明
size 属性 获取集合的长度
add Object 方法 往集合添加元素
delete key 方法 删除集合中某个元素 删除成功返回true
has key 方法 判断key是否在集合中存在如果存在返回true
clear 方法 清空集合元素
forEach function 方法 遍历集合中的元素

size属性

var set = new Set(["sd",68,86,38,64,"qweq",58,"68",86]);
console.log(set.size) //打印8
console.log(set.length) //打印undefined

add方法

var set = new Set(["sd",68,86,38,64,"qweq",58,"68",86]);
 console.log(set.add("qq")); //打印{"sd",68,86,38,64,"qweq",58,"68",86,"qq"} 说明添加成功了
 console.log(set.add("qq")); //依旧打印{"sd",68,86,38,64,"qweq",58,"68",86,"qq"} 说明重复的并没有被添加

delete方法

var set = new Set(["sd",68,86,38,64,"qweq",58,"68",86]);
console.log(set.delete("68"));	//打印true说明删除成功
console.log(set.delete("68"));	//打印false说明删除失败因为集合中已经不存在"68"
console.log(set);	//打印 {"sd",68,86,38,64,"qweq",58,86} "68已被删除"

has方法

var set = new Set(["sd",68,86,38,64,"qweq",58,"68",86]);
console.log(set.has(68)); //返回true说明68在集合中存在
set.delete(68);	//这里把68删除
console.log(set.has(68));	//返回false说明68在集合中不存在

clear方法

var set = new Set(["sd",68,86,38,64,"qweq",58,"68",86]);
set.clear();	//清空集合
console.log(set.size);	//打印结果为0 说明集合已经被清空了
console.log(set);	//打印结果{}	说明集合已经被清空了

forEach方法

var set = new Set(["sd",68,86,38,64,"qweq",58,"68",86]);
set.forEach(function(item,index,set){
    console.log(item,index,set);
    //打印结果 item是每一个集合元素的值 index与item的结果一致 set是集合本身
    //在这里index和set可以不需要
})

JavaScript进阶之浅谈Map集合

你可能感兴趣的:(JavaScript,前端)