Set 和 Map
2019-12-05 09:57:08 0 举报
AI智能生成
ES6-思维导图
作者其他创作
大纲/内容
Set
类似于数组,<br>但是成员的值都是唯一的<br>没有重复的值<br>
// 去除重复字符串<br>[...new Set('ababbc')].join('')
// 去除数组的重复成员<br>[...new Set(array)]<br>
属性
size
返回Set实例的成员总数
add()
delete()
has()
clear()
set结构中NaN值是相等的<br>所以只会添加一次
Array.from将 Set 结构转为数组。
遍历方法
由于没有键值对<br>keys() 和 values() 值相同
keys()
values()
entries()
forEach()
第二个参数:<br>表示绑定处理函数内部的this对象<br>
可以结合扩展运算符使用数组的map和filter方法
Map
添加成员
new Map([<br> ['name', '张三'],<br> ['title', 'Author']<br>])
只要符合[['foo', 'a'], [{'bar': 2}, 'b']]类似的格式<br>都可以转成map格式
方法
get()
set()
delete()
has()
clear()
属性
size
遍历方法
keys()
values()
entries()
forEach()
第二个参数:<br>表示绑定处理函数内部的this对象<br>
多次赋值<br>后者覆盖前者
只有对同一个对象的引用<br>Map 结构才将其视为同一个键
可以结合扩展运算符使用数组的map和filter方法
与其他数据结构相互转换
Map 转为数组
[...myMap]
数组 转为 Map
new Map([<br> [true, 7],<br> [{foo: 3}, ['abc']]<br>])
Map 转为对象(键名都是字符串)
对象转为 Map
Map 转为 JSON
键名:字符串 可以转成对象JSON
键名:非字符串 可以转成数组JSON
JSON 转为 Map
0 条评论
下一页