Returns an array of mapped values from an array or object.
npm install collection-map> Returns an array of mapped values from an array or object.
Install with npm:
``sh`
$ npm install --save collection-map
Inspired by the collections/map util in mout.
`js`
var map = require('collection-map');
`js
var res = map({a: 'foo', b: 'bar', c: 'baz'}, function(item, key, obj) {
return item;
});
console.log(res);
// => ['foo', 'bar', 'baz']
var res = map({a: 'foo', b: 'bar', c: 'baz'}, function(item, key, obj) {
return key;
});
console.log(res);
// => ['a', 'b', 'c']
`
`js
var res = map(['foo', 'bar', 'baz'], function(item, index, array) {
return item;
});
console.log(res);
// => ['foo', 'bar', 'baz']
var res = map(['foo', 'bar', 'baz'], function(item, index, array) {
return index;
});
console.log(res);
// => [0, 1, 2]
`
A string may be passed as the second argument, for getting properties:
`js
var obj = {
a: {aaa: 'one', bbb: 'four', ccc: 'seven'},
b: {aaa: 'two', bbb: 'five', ccc: 'eight'},
c: {aaa: 'three', bbb: 'six', ccc: 'nine'}
};
console.log(map(obj, 'aaa'));
// => ['one', 'two', 'three']
var array = [obj.a, obj.b, obj.c];
console.log(map(array, 'bbb'));
// => ['four', 'five', 'six']
`
Invocation context may be passed as the last argument.
`js
var array = ['a', 'b', 'c'];
var ctx = {a: 'aaa', b: 'bbb', c: 'ccc'};
var res = map(array, function(item, index, array) {
return this[item];
}, ctx);
console.log(res);
// => ['aaa', 'bbb', 'ccc']
`
* arr-flatten: Recursively flatten an array or arrays. This is the fastest implementation of array flatten. | homepage
* arr-map: Faster, node.js focused alternative to JavaScript's native array map. | homepage
* for-in: Iterate over the own and inherited enumerable properties of an object, and return an object… more | false. JavaScript/Node.js"" class="text-primary hover:underline" target="_blank" rel="noopener noreferrer">homepage
* for-own: Iterate over the own enumerable properties of an object, and return an object with properties… more | false. JavaScript/Node.js."" class="text-primary hover:underline" target="_blank" rel="noopener noreferrer">homepage
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
_(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)_
To generate the readme, run the following command:
`sh`
$ npm install -g verbose/verb#dev verb-generate-readme && verb
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
`sh``
$ npm install && npm test
Jon Schlinkert
* github/jonschlinkert
* twitter/jonschlinkert
Copyright © 2017, Jon Schlinkert.
Released under the MIT License.
*
_This file was generated by verb-generate-readme, v0.4.3, on March 02, 2017._