TypeScript Map 对象


TypeScript中的Map对象是一种键值对存储容器,其中的键和值可以是任何类型。Map对象提供了高效的插入、查找、更新和删除(key-value)操作的数据类型。

如何创建Map对象

使用构造函数即可创建一个Map对象。

let map = new Map();

基本操作

插入数据

插入一个键值对:

map.set(key, value)

同一个键可以插入多次,后面的值将覆盖前面的值。

获取数据

获取一个键对应的值:

map.get(key)

如果键不存在,返回undefined

判断是否包含某个键

判断Map中是否包含某个键:

map.has(key)

删除数据

删除一个键值对:

map.delete(key)

清空Map

清空Map中的所有键值对:

map.clear()

获取所有的键和值

获取Map中所有的键:

map.keys()

获取Map中所有的值:

map.values()

获取Map中所有的键值对:

map.entries()

获取Map的大小

获取Map中键值对的数量:

map.size

Map的使用示例

let map = new Map();

// 添加三个键值对
map.set('name', 'Alice');
map.set('age', 20);
map.set('city', 'Beijing');

// 获取键对应的值
console.log(map.get('name')); // Alice
console.log(map.get('age')); // 20
console.log(map.get('city')); // Beijing

// 获取Map中所有的键
console.log(map.keys()); // {"name", "age", "city"}

// 获取Map中所有的值
console.log(map.values()); // {"Alice", 20, "Beijing"}

// 获取Map中所有的键值对
console.log(map.entries()); // {["name", "Alice"], ["age", 20], ["city", "Beijing"]}

// 判断是否包含某个键
console.log(map.has('name')); // true
console.log(map.has('gender')); // false

// 删除一个键值对
map.delete('age');
console.log(map); // {"name" => "Alice", "city" => "Beijing"}

// 清空Map
map.clear();
console.log(map); // {}

总结

Map对象是一个非常实用的数据类型,它可以用来存储和查找键值对,支持快速的插入、查找、更新和删除操作。同时,Map对象也提供了一系列的实用方法,可以方便地进行遍历和操作Map中的键值对。在使用Map对象时需要注意的是,键和值可以是任何类型,而且键必须是唯一的,否则后面的值会覆盖前面的值。