Module

x/lodash/_baseExtremum.js

A modern JavaScript utility library delivering modularity, performance, & extras.
Extremely Popular
Go to Latest
File
define(['./isSymbol'], function(isSymbol) {
/** Used as a safe reference for `undefined` in pre-ES5 environments. */ var undefined;
/** * The base implementation of methods like `_.max` and `_.min` which accepts a * `comparator` to determine the extremum value. * * @private * @param {Array} array The array to iterate over. * @param {Function} iteratee The iteratee invoked per iteration. * @param {Function} comparator The comparator used to compare values. * @returns {*} Returns the extremum value. */ function baseExtremum(array, iteratee, comparator) { var index = -1, length = array.length;
while (++index < length) { var value = array[index], current = iteratee(value);
if (current != null && (computed === undefined ? (current === current && !isSymbol(current)) : comparator(current, computed) )) { var computed = current, result = value; } } return result; }
return baseExtremum;});