iceshrimp/src/web/app/common/scripts/get-median.ts

12 lines
363 B
TypeScript
Raw Normal View History

2017-11-20 02:31:29 +09:00
/**
*
* @param samples
*/
export default function(samples) {
if (!samples.length) return 0;
const numbers = samples.slice(0).sort((a, b) => a - b);
const middle = Math.floor(numbers.length / 2);
const isEven = numbers.length % 2 === 0;
return isEven ? (numbers[middle] + numbers[middle - 1]) / 2 : numbers[middle];
}