12345678910111213141516171819202122232425262728293031323334 |
- var makeIterator = require('../function/makeIterator_');
- /**
- * Return maximum value inside array
- */
- function max(arr, iterator, thisObj){
- if (arr == null || !arr.length) {
- return Infinity;
- } else if (arr.length && !iterator) {
- return Math.max.apply(Math, arr);
- } else {
- iterator = makeIterator(iterator, thisObj);
- var result,
- compare = -Infinity,
- value,
- temp;
- var i = -1, len = arr.length;
- while (++i < len) {
- value = arr[i];
- temp = iterator(value, i, arr);
- if (temp > compare) {
- compare = temp;
- result = value;
- }
- }
- return result;
- }
- }
- module.exports = max;
|