maxBy
Import from @varavel/vdl-plugin-sdk/utils/arrays.
Utility functions re-exported from es-toolkit (MIT License).
See https://github.com/toss/es-toolkit for more details.
Call Signature
Finds the element in an array that has the maximum value when applying
the getValue function to each element.
Type Parameters
| Type Parameter | Description |
|---|---|
T |
The type of elements in the array. |
Parameters
| Parameter | Type | Description |
|---|---|---|
items |
readonly [T, T] |
The nonempty array of elements to search. |
getValue |
(element, index, array) => number |
A function that selects a numeric value from each element. |
Returns
T
The element with the maximum value as determined by the getValue function.
Example
maxBy([{ a: 1 }, { a: 2 }, { a: 3 }], x => x.a); // Returns: { a: 3 }
maxBy([], x => x.a); // Returns: undefined
maxBy(
[
{ name: 'john', age: 30 },
{ name: 'jane', age: 28 },
{ name: 'joe', age: 26 },
],
x => x.age
); // Returns: { name: 'john', age: 30 }
Call Signature
Finds the element in an array that has the maximum value when applying
the getValue function to each element.
Type Parameters
| Type Parameter | Description |
|---|---|
T |
The type of elements in the array. |
Parameters
| Parameter | Type | Description |
|---|---|---|
items |
readonly T[] |
The array of elements to search. |
getValue |
(element, index, array) => number |
A function that selects a numeric value from each element. |
Returns
T | undefined
The element with the maximum value as determined by the getValue function,
or undefined if the array is empty.