UNPKG

389 BJavaScriptView Raw
1import { identityAsync } from '../util/identity';
2export async function average(source, selector = identityAsync) {
3 let sum = 0;
4 let count = 0;
5 for await (const item of source) {
6 sum += await selector(item);
7 count++;
8 }
9 if (count === 0) {
10 throw new Error('Empty collection');
11 }
12 return sum / count;
13}
14
15//# sourceMappingURL=average.mjs.map