Files
collection.ts/src/collection/minBy.ts
2026-04-29 18:24:32 +02:00

17 lines
447 B
TypeScript

import {error} from "../util/error";
export function minBy<T>(value: T[], transform: (it: T) => number): T {
if (value.length === 0) error();
let minIt = value[0];
let minVal = transform(minIt);
for (let index = 1; index < value.length; index++) {
const it = value[index];
const val = transform(it);
if (val < minVal) {
minIt = it;
minVal = val;
}
}
return minIt;
}