Skip to content

maxBy() function

指定された Iterable/AsyncIterable の中で、f が最も大きい値を返す要素を返します。空の iterable の場合は undefined を返し、同値の場合は最初の要素が優先されます。

Signature:

typescript
function maxBy<A>(f: (a: A) => number, iterable: Iterable<A>): A | undefined;
function maxBy<A>(
  f: (a: A) => number,
  iterable: AsyncIterable<A>,
): Promise<A | undefined>;

Example

ts
maxBy(
  (a) => a.age,
  [
    { name: "a", age: 21 },
    { name: "b", age: 41 },
    { name: "c", age: 31 },
  ],
); // { name: "b", age: 41 }

maxBy((a) => a.length, []); // undefined

pipe(
  [{ score: 1 }, { score: 3 }, { score: 2 }],
  maxBy((a) => a.score),
); // { score: 3 }

Open Source Code

Released under the Apache-2.0 License.