SIGN IN SIGN UP

A modern JavaScript utility library delivering modularity, performance, & extras.

0 0 17 JavaScript
2016-01-28 01:16:24 -08:00
define(['./_baseEach', './isArrayLike'], function(baseEach, isArrayLike) {
2015-01-08 00:37:01 -08:00
/**
2015-12-16 17:53:20 -08:00
* The base implementation of `_.map` without support for iteratee shorthands.
2015-01-08 00:37:01 -08:00
*
* @private
2015-12-16 17:53:20 -08:00
* @param {Array|Object} collection The collection to iterate over.
2015-01-08 00:37:01 -08:00
* @param {Function} iteratee The function invoked per iteration.
* @returns {Array} Returns the new mapped array.
*/
function baseMap(collection, iteratee) {
2015-12-16 17:49:35 -08:00
var index = -1,
2015-12-16 17:50:05 -08:00
result = isArrayLike(collection) ? Array(collection.length) : [];
2015-12-16 17:49:35 -08:00
2015-01-08 00:37:01 -08:00
baseEach(collection, function(value, key, collection) {
2015-12-16 17:49:35 -08:00
result[++index] = iteratee(value, key, collection);
2015-01-08 00:37:01 -08:00
});
return result;
}
return baseMap;
});