Javascript转换数组对象为map类型的例子

118 阅读1分钟

对象数组是用[]括起来的对象列表,每个对象持有键和值对。

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' }