00001 var isSymbol = require('./isSymbol'); 00002 00013 function baseExtremum(array, iteratee, comparator) { 00014 var index = -1, 00015 length = array.length; 00016 00017 while (++index < length) { 00018 var value = array[index], 00019 current = iteratee(value); 00020 00021 if (current != null && (computed === undefined 00022 ? (current === current && !isSymbol(current)) 00023 : comparator(current, computed) 00024 )) { 00025 var computed = current, 00026 result = value; 00027 } 00028 } 00029 return result; 00030 } 00031 00032 module.exports = baseExtremum;