JavaScript的Map对象是ES6新增的一种数据结构,它类似于对象,也可以用来存储键值对。与对象不同的是,Map 对象中的键可以是任何类型的值(包括对象),而对象只能使用字符串作为键。
Map对象的使用
Map 对象通过 new Map() 构造函数来创建,它接受一个数组作为参数,数组的每个元素都是一个由键和值组成的数组:
let map = new Map([ ["name", "John"], ["age", 20] ]);
除此之外,还可以使用 set() 方法来向 Map 对象中添加键值对:
map.set("hobby", "swimming");
要获取 Map 对象中的值,可以使用 get() 方法:
let name = map.get("name"); // John
如果要删除 Map 对象中的键值对,可以使用 delete() 方法:
map.delete("age");
如果要检查 Map 对象中是否包含某个键,可以使用 has() 方法:
let hasName = map.has("name"); // true
要清空 Map 对象,可以使用 clear() 方法:
map.clear();
Map 对象还提供了一些其他有用的方法,比如 size 属性可以返回 Map 对象中键值对的数量,keys() 方法可以返回所有键的迭代器,values() 方法可以返回所有值的迭代器,entries() 方法可以返回所有键值对的迭代器,forEach() 方法可以遍历 Map 对象中的所有键值对。
- Map 对象可以用来存储键值对,与对象不同的是,Map 对象中的键可以是任何类型的值(包括对象)。
- Map 对象可以通过 new Map() 构造函数来创建,也可以使用 set() 方法来向 Map 对象中添加键值对。
- Map 对象可以使用 get() 方法来获取值,delete() 方法来删除键值对,has() 方法来检查是否包含某个键,clear() 方法来清空 Map 对象。
- Map 对象还提供了一些其他有用的方法,比如 size 属性可以返回 Map 对象中键值对的数量,keys() 方法可以返回所有键的迭代器,values() 方法可以返回所有值的迭代器,entries() 方法可以返回所有键值对的迭代器,forEach() 方法可以遍历 Map 对象中的所有键值对。