键值对
有没有遇到过在JavaScript中使用键值对的场景,键值对在C# Java 语言中是非常主流的概念,但是在JavaScript中,开发人员却面临一个挑战,大多数情况下,要使用自定义类型来解决这个问题.Map就是为了到达相同目的而设计的.
直接看代码,创建一个Map对象并且在示例中使用它.
1 | var myMap = new Map(); |
第一步,创建了Map对象,然后创建三个变量,然后给Map对象设置键值.
设置键值的语法1
object.set(<key>, <value>);
正如示例中一样,给Map对象设置键值,然后输出键对应的值.
取值的语法1
object.get(<key>) ;
上面的示例输出的结果是:
1 | value for key1 |
通过移除Map中所有的键值对来清空Map对象,清空的语法:
1 | myMap.clear(); |
通过object.clear()将清空Map中所有的值.
如果再次执行以下代码:
1 | console.log(myMap.get(key1)); |
输出的结果将会是:
1 | undefined |
那么如何从Map中删除特定的键呢.
我们先初始化Map,然后删除key21
2
3
4
5myMap.set(key1, "value for key1");
myMap.set(key2, 'value for key2');
myMap.set(key3, 'value for key3');
myMap.delete(key2);
从Map中获取所有的键1
var mapIter = myMap.keys();
最后,我们可以打印出Map中所有的键值.
1 | for (var [key, value] of myMap) { |
Map可以使用for...of循环
输出的结果:
1 | key1 = value for with key1 |