Javascript Convert Array of objects to Map type example

An array of objects is a list of objects enclosed in [], each object holds key and value pairs.

The map is a new type introduced in ES6, that holds key and value pairs using the hash map data structure. Given an array of objects

var arrayObjects = [
  { sid: "11", name: "john" },
  { sid: "14", name: "tom" },
];

In this blog post, I will take you to examples of converting an array to a map with keys and values in JavaScript.

Use the map function to convert an array of objects to a map

The Array.map() function iterates an array, calls the callback for each element, and creates key and value elements. finally, returning a new array of keys and values into the Map constructor. Printing map object to the console using the console.dir() function.

var result = new Map(arrayObjects.map((key) => [key.sid, key.name]));
console.dir(result);

And output is

Map { '11' => 'john', '14' => 'tom' }

Typescript example,convert array of objects to HashMap type

The below explains about following things.

  • Typescript is a superset of javascript with additional features type assertions.
  • During the iteration of an array, each key is typed as [string, string].
  • finally, add the array to the map
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)

Output is

Map { '11' => 'john', '14' => 'tom' }