Projekt

Obecné

Profil

Stáhnout (991 Bajtů) Statistiky
| Větev: | Revize:
1
var baseExtremum = require('./_baseExtremum'),
2
    baseIteratee = require('./_baseIteratee'),
3
    baseLt = require('./_baseLt');
4

    
5
/**
6
 * This method is like `_.min` except that it accepts `iteratee` which is
7
 * invoked for each element in `array` to generate the criterion by which
8
 * the value is ranked. The iteratee is invoked with one argument: (value).
9
 *
10
 * @static
11
 * @memberOf _
12
 * @since 4.0.0
13
 * @category Math
14
 * @param {Array} array The array to iterate over.
15
 * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
16
 * @returns {*} Returns the minimum value.
17
 * @example
18
 *
19
 * var objects = [{ 'n': 1 }, { 'n': 2 }];
20
 *
21
 * _.minBy(objects, function(o) { return o.n; });
22
 * // => { 'n': 1 }
23
 *
24
 * // The `_.property` iteratee shorthand.
25
 * _.minBy(objects, 'n');
26
 * // => { 'n': 1 }
27
 */
28
function minBy(array, iteratee) {
29
  return (array && array.length)
30
    ? baseExtremum(array, baseIteratee(iteratee, 2), baseLt)
31
    : undefined;
32
}
33

    
34
module.exports = minBy;
(485-485/634)