1. map的介绍它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。也就是说,Object 结构提供了“字符串—值”的对应,Map 结构提供了“值—值”的对应,是一种更完善的 Hash 结构实现。如果你需要“键值对”的数据结构,Map 比 Object 更合适。
  2. 1.Map是键值对,Set是值的集合本身是一个构造函数,当然键和值可以是任何的值;
    2.Map可以通过get方法获取值,而set不能因为它只有值;
    3.都能通过迭代器进行for…of遍历;
    4.Set的值是唯一的可以做数组去重,Map由于没有格式限制,可以做数据存储
    5.map和set都是stl中的关联容器,map以键值对的形式存储,key=value组成pair,是一组映射关系。set只有值,可以认为只有一个数据,并且set中元素不可以重复且自动排序。
  3. Set是一种叫做集合的数据结构
  4. Map是一种叫做字典的数据结构
  5. 应用场景:数据去重和数据存储
  • 集合是由一组无序且唯一的项组成的,可以想象成集合是一个既没有重复元素,也没有顺序概念的数组
  • ES6提供了新的数据结构Set,类似于数组,但是成员的值都是唯一的,没有重复的值
  • Set本身是一个构造函数,用来生成Set数据结构的

属性

• size:返回字典所包含的元素个数

操作方法

• add(value): 添加某个值,返回Set结构本身
• delete(value):删除某个值,返回一个布尔值,表示删除是否成功
• has(value): 返回一个布尔值,表示该值是否为Set的成员
• clear(): 清除所有的成员,无返回值
• size: 返回Set数据结构的数据长度

遍历方法

• keys():返回键名的遍历器
• values(): 返回键值的遍历器
• entries():返回键值对的遍历器
• forEach():使用回调函数遍历每个成员,无返回值

Map 字典 类对象

  • 类似于对象,也是键值对的集合,但是键的范围不限于字符串,各种类型的值都可以当作键,是一种更完善的Hash结构实现,如果你需要键值对的数据结构,Map 比 Object更合适
  • 集合和字典的区别:
    — 共同点:集合,字典可以存储不重复的值
    — 不同点:集合是以[值,值]的形式存储元素,字典是以[键,值]的形式存储

属性

• size:返回字典所包含的元素个数

操作方法

• set(key,value): 向字典树中添加元素
• get(key):通过键值查找特性的数值并返回
• has(key): 如果键值存在字典中返回true,否则false
• delete(key): 通过键值从字典树中移除对应的数据
• clear(): 将找个字段中的所有元素删除

遍历方法

• keys(): 将字典中包含的所有键名以数组形式返回
• values(): 将字典中包含的所有数值以数组形式返回
• entries(): 返回键值对的遍历器