medianBy
通过对每个元素应用 getValue 函数来计算元素数组的中位数。
中位数是排序数组中的中间值。 如果数组的元素个数为奇数,中位数就是中间的值。 如果数组的元素个数为偶数,则返回两个中间值的平均值。
如果数组为空,此函数返回NaN。
签名
typescript
export function medianBy<T>(items: T[], getValue: (element: T) => number): number;参数
items(T[]): 要计算中位数的数组。getValue((element: T) => number): 从每个元素选择数值的函数。
返回值
(number): 根据 getValue 函数确定的所有数值的中位数。
示例
typescript
medianBy([{ a: 1 }, { a: 2 }, { a: 3 }, { a: 4 }, { a: 5 }], x => x.a); // 返回: 3
medianBy([{ a: 1 }, { a: 2 }, { a: 3 }, { a: 4 }], x => x.a); // 返回: 2.5
medianBy([], x => x.a); // 返回: NaN
