ut2
Version:
一个现代 JavaScript 实用工具库。[点击查看在线文档]。
23 lines (20 loc) • 741 B
JavaScript
import isArray from '../isArray.js';
import isSymbol from '../isSymbol.js';
import createIteratee from './createIteratee.js';
import { nativeUndefined } from './native.js';
function createExtremum(array, comparator, iteratee) {
if (!isArray(array)) {
return;
}
var result, computed;
var internalIteratee = createIteratee(iteratee);
array.forEach(function (value, index) {
var current = internalIteratee(value, index, array);
if (current != null && (computed === nativeUndefined ? current === current && !isSymbol(current) : comparator(current, computed))) {
computed = current;
result = value;
}
});
return result;
}
export { createExtremum as default };