map 是 typescript 中的内置数据结构,用于存储键值对。它的优点包括:键的类型可以是任何类型,而不像 JavaScript 对象只能使用字符串。map 的值是一个有序的集合,并且可以迭代。提供了专用的 api 来操作键值对,使其更易于使用。
typescript 中的使用 map
Map 是 TypeScript 中的一个内置数据结构,用于存储键值对。它与普通的 JavaScript 对象类似,但具有以下优势:
使用 Map
要使用 Map,首先需要创建一个 Map 实例:
const myMap = new Map<string, number>();
登录后复制
要将键值对添加到 Map 中,可以使用 set 方法:
myMap.set('name', 'John'); myMap.set('age', 30);
登录后复制
要获取 Map 中的值,可以使用 get 方法:
const name = myMap.get('name'); // 'John' const age = myMap.get('age'); // 30
登录后复制
要检查 Map 是否包含某个键,可以使用 has 方法:
console.log(myMap.has('name')); // true console.log(myMap.has('job')); // false
登录后复制
要删除 Map 中的键值对,可以使用 delete 方法:
myMap.delete('age'); console.log(myMap.has('age')); // false
登录后复制
要遍历 Map,可以使用 foreach 方法:
myMap.forEach((value, key) => { console.log(`${key}: ${value}`); });
登录后复制
输出:
name: John
登录后复制
示例
以下示例演示了如何使用 Map 存储用户信息:
const user = new Map(); user.set('name', 'John Doe'); user.set('email', 'john.doe@example.com'); user.set('phone', '555-123-4567'); console.log(user.get('name')); // 'John Doe' console.log(user.has('email')); // true user.delete('phone'); console.log(user.has('phone')); // false user.forEach((value, key) => { console.log(`${key}: ${value}`); });
登录后复制
输出:
John Doe true false name: John Doe email: john.doe@example.com
登录后复制