* Map 和 Set---ES6 新增的两种数据结构
一、 set 类似于 数组的 一种数据结构
* 内部按照索引排序(但是不能通过索引取值)
*
* 语法 let s = new Set([数据1, 数据2, 数据3])
*
* 特点: 天生不支持重复数据
* * 1. size (类似数组的 length); 作用: 获取到当前数据结构中 数据的数量
* 2. add 方法; 作用: 向当前数据结构中 新增数据
* 3. has() 作用: 查询当前数据结构中是否拥有该数据; 找到的时候, 返回 true, 否则返回false
* 4. delete(数据) 作用: 将当前数据结构中的 这个数据删掉
* 5. clear() 作用: 清空当前数据结构
* 6. forEach 作用: 遍历数据结构, 拿到数据结构的每一项
*
二、map 类似于 对象的 一种数据结构
* 和 set 一样, 也不支持重复数据
*
* 但是 map 的 key 可以是任意类型的值
*
* 语法: var m = new Map([key, value])
*
* 在实际开发中, 我们使用 map 的场景一般为 想要将对象的 key 用于字符串之外的数据时使用
*
* 1. size 作用: 返回当前数据结构的 数据长度(多少个)
* 2. set() 作用: 向当前数据结构中, 新增数据
* 3. get(key) 作用: 获取到指定key 对应的 value
* 4. has(key) 作用: 查询数据结构中是否存在当前 key; 存在返回一个 true ,否则返回一个 false
* 5. delete 作用: 删除当前数据结构对应的 key
* 6. clear 作用: 清空当前数据结构
* 7. forEach
* item: 对应的 value
* key: 对应的 key
* origin: 对应的原始数据结构