map-map | Vaadin

[Node.js] Applies a callback to each key-value pair of a Map or Object.


Applies a callback to each key-value pair of a Map, Object, or other collection. The original collection is not modified; a copy is returned.


Requires Node.js 7.0.0 or above.

npm i map-map


The module exports a single function.


  1. Bindable: map (Array, iterator, Object, Map, Set, string, or Typed Array)
  2. mapper (function): The callback which receives three arguments (key, value, and index) and which returns a two-element array containing the new key and value.
  3. Optional: options: Object argument which is forwarded to entries-array, a dependency of this module.

Return Value

A copy of map which has had mapper applied to each of its key-value pairs.


const mapMap = require('map-map')

let map = new Map([['key', 'value']])
map = mapMap(map, (key, value, index) => [key + '_mapped', value + '_mapped'])
map.get('key_mapped') // 'value_mapped'

Works on Objects too:

const mapMap = require('map-map')

let obj = {key: 'value'}
obj = mapMap(obj, (key, value, index) => [key + '_mapped', value + '_mapped'])
obj.key_mapped // 'value_mapped'


Link to this version
ImportedReleased 03 November 2018MIT License
Framework Support
Browser Independent
Install with
npm install map-map"@3.1.0"
Run the above npm command in your project folder. If you have any issues installing, please contact the author.
Release notes - Version 3.1.0


  • construct-map#^1.2.0
  • entries-array#^1.1.0
  • sbo#^1.1.0