一、Set
Set ,就是一堆东西的集合,Set 有点像 Array-数组, 不过跟数组不一样的是,Set 里面不能有重复的内容。
- 创建Set对象
let desserts = new Set(['冰淇淋','蛋糕']);
- Set中添加数据
desserts.add("曲奇");
- 获取Set的长度
desserts.size;
- 判断Set中是否包含某一个元素
desserts.has("甜甜圈");
- Set 中删除一个元素
desserts.delete("蛋糕");
- 遍历Set
desserts.forEach(dessert => {console.log(dessert);})
- 清空Set
desserts.clear();
二、Map
如果我们需要一个名值对的数据结构,可以使用对象,一个对象里面可以包含多个属性,每个属性都有一个名字,还有跟他对应的值,不过使用对象会有一些限制或引起冲突 ,比如不能使用对象来作为属性的名字。现在我们可以使用 Map 来组织这种名值对的数据,创建一个 map 可以使用 new Map()
- 创建Map对象
let food = new Map();
- Map中添加数据
let fruit = {}, cook = function(){}, dessert = "甜点”;
food.set(fruit,"苹果");
food.set(cook,"刀叉");
food.set(dessert,"甜甜圈");
- 获取Map中的数据
food.get(fruit);
- 判断Map中是否包含某一个元素
desserts.has(fruit);
- Map 中删除一个元素
food.delete(dessert);
- 查看Map的长度
food.size;
- 遍历Map
food.forEach((value,key) => {console.log(value);console.log(key);})
- 清空Map
food.clear();
另外还有WeakSet、WeakMap,它们与set、map结构类似,想要详细了解的话可以到传送门看。
胜人者智,胜之者强。
网友评论