typescript中将一个复杂对象列表转换成map
时间: 2023-08-08 20:07:22 浏览: 258
将对象变成map
好的,您可以使用以下代码将一个复杂对象列表转换成 Map 对象:
```typescript
interface MyObject {
id: number;
name: string;
age: number;
}
const list: MyObject[] = [
{ id: 1, name: '张三', age: 20 },
{ id: 2, name: '李四', age: 25 },
{ id: 3, name: '王五', age: 30 }
];
const map: Map<number, MyObject> = new Map<number, MyObject>();
for (const obj of list) {
map.set(obj.id, obj);
}
console.log('Map 对象:', map);
```
在上面的代码中,我们定义了一个 MyObject 接口来表示复杂对象的类型。然后我们定义了一个 MyObject 类型的数组 list,用来表示要转换成 Map 对象的复杂对象列表。接着我们创建了一个 Map 对象 map,并使用 for 循环遍历 list 数组,将数组中的每一个对象转换成 Map 的 key-value 形式,其中 key 是对象的 id 属性,value 是对象本身。最后我们打印了转换后的 Map 对象。
需要注意的是,Map 对象的 key 必须是唯一的,因此在转换时需要保证每一个对象的 id 属性都是唯一的。如果存在重复的 id,后面的对象会覆盖前面的对象。
阅读全文