Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including map-obj with all npm packages installed. Try it out:

var mapObj = require("map-obj")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

map-obj v4.1.0

Map object keys and values into a new object

map-obj Build Status

Map object keys and values into a new object


$ npm install map-obj


const mapObject = require('map-obj');

const newObject = mapObject({foo: 'bar'}, (key, value) => [value, key]);
//=> {bar: 'foo'}


mapObject(source, mapper, options?)


Type: object

Source object to copy properties from.


Type: Function

Mapping function.

  • It has signature mapper(sourceKey, sourceValue, source).
  • It must return a two item array: [targetKey, targetValue].


Type: object


Type: boolean
Default: false

Recurse nested objects and objects in arrays.


Type: object
Default: {}

Target object to map properties on to.


  • filter-obj - Filter object keys and values into a new object

Get professional support for this package with a Tidelift subscription
Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies.


RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free