function baseMap(collection, iteratee) {
  var index = -1,
      result = isArrayLike(collection) ? Array(collection.length) : [];

  baseEach(collection, function(value, key, collection) {
    result[++index] = iteratee(value, key, collection);
  });
  return result;
}
A specialized version of `baseProperty` which supports deep paths.

@private
@param {Array|string} path The path of the property to get.
@returns {Function} Returns the new function.