对象数组是用[]括起来的对象列表,每个对象持有键和值对。
Map是ES6中引入的一个新类型,它使用哈希地图数据结构来保存键和值对。
给定一个对象的数组
var arrayObjects = [
{ sid: '11', name: 'john' },
{ sid: '14', name: 'tom' }
];
在这篇博文中,我将带你看一个在javascript中把数组转换为带有键和值的地图的例子。
Javascript数组转MAP的例子
Array.map函数()为数组中的每个元素调用回调,并创建key和value元素,最后将key和value的新数组返回给Map构造函数。使用console.dir()函数将map对象打印到控制台。
var result = new Map(arrayObjects.map(key => [key.sid, key.name]));
console.dir(result);
输出是
Map { '11' => 'john', '14' => 'tom' }
类型脚本的例子:将对象数组转移到HashMap类型
以下是对以下内容的解释:
- Typescript是javascript的一个超级集合,它具有类型断言的附加功能。
- 在数组的迭代过程中,每个键都被打成[string,string]。
- 最后将数组添加到地图中
var arrayObjects = [
{ sid: '11', name: 'john' },
{ sid: '14', name: 'tom' }
];
var result = new Map(arrayObjects.map(key => [key.sid, key.name] as [string, string]));
console.log(result)
输出是
Map { '11' => 'john', '14' => 'tom' }