es-toolkit/benchmarks/performance/uniqBy.bench.ts
2024-07-17 11:47:39 +09:00

27 lines
688 B
TypeScript

import { bench, describe } from 'vitest';
import { uniqBy as uniqByToolkit } from 'es-toolkit';
import { uniqBy as uniqByLodash } from 'lodash';
import { randomInt } from 'crypto';
describe('uniqBy, small arrays', () => {
bench('es-toolkit/uniqBy', () => {
uniqByToolkit([2.1, 1.2, 2.3], Math.floor);
});
bench('lodash/uniqBy', () => {
uniqByLodash([2.1, 1.2, 2.3], Math.floor);
});
});
describe('uniqBy, large arrays', () => {
const array = Array.from({ length: 10000 }).map(() => randomInt(0, 10000));
bench('es-toolkit/uniqBy', () => {
uniqByToolkit(array, Math.floor);
});
bench('lodash/uniqBy', () => {
uniqByLodash(array, Math.floor);
});
});