ES6 Map和Set

1 篇文章 0 订阅
1 篇文章 0 订阅

1.Map

ES6中提供了Map数据结构,是键值对的集合

  • 方法
方法描述
clear()移除Map对象的所有键/值对
delete(key)移除指定的元素
get(key)返回映射中的指定元素
set(value,value)添加一个新建元素到映射
has(key)判断是否存在指定元素,返回布尔值
size返回元素数量
  • 示例
let map = new Map();
map.set('name','amy acker');
map.set(1,99);

console.log(map.size); //2
console.log(map.get('name')); //amy acker
console.log(map.has('name')); //true
console.log(map.delete('name')); //true
console.log(map.has('name'));  //false
console.log(map.size);	//1
map.clear();
console.log(map.size);	//0

2.Set

ES6中提供了Set数据容器,是个能够存储无重复值的有序列表。

  • 方法
方法描述
clear()移除Set对象,清空所有元素
delete(value)移除指定的元素,返回布尔值
add(value)添加元素,返回值是实例本身
has(value)判断是否存在指定元素,返回布尔值
size返回元素数量
  • 示例
let set = new Set([1,2,2,3,4]);
console.log(set);	//1,2,3,4
set.add(3);
set.add(5);
console.log(set);	//1,2,3,4,5

console.log(set.size); //5
console.log(set.has(1));	//true
console.log(set.delete(1));	//true
console.log(set.has(1));	//false
console.log(set.size);	//4
set.clear();	
console.log(set.size);	//0

  • 注意:
//下面代码看起来是同一个键,实际上这两个值的内存地址是不一样的
map.set([], 1);
console.log(map.get([])); //undefined

//同理
set.add([]);
set.add([]);
console.log(set.size); //2

let arr = [];
set.add(arr);
set.add(arr);
console.log(set.size); //1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值