Spaces:
Build error
Build error
import ascending from "./ascending.js"; | |
export default function greatest(values, compare = ascending) { | |
let max; | |
let defined = false; | |
if (compare.length === 1) { | |
let maxValue; | |
for (const element of values) { | |
const value = compare(element); | |
if (defined | |
? ascending(value, maxValue) > 0 | |
: ascending(value, value) === 0) { | |
max = element; | |
maxValue = value; | |
defined = true; | |
} | |
} | |
} else { | |
for (const value of values) { | |
if (defined | |
? compare(value, max) > 0 | |
: compare(value, value) === 0) { | |
max = value; | |
defined = true; | |
} | |
} | |
} | |
return max; | |
} | |