/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
v22.23.1
benchmark/util/diff.js
43 строки
1 KB
Rafael Gonzaga
benchmark: calibrate length of util.diff
20 сен 2025, 09:10
Не верифицирован
20 сен 2025, 09:10
e4fea38
Код
Авторство
О чём код?
'use strict'; const util = require('util'); const common = require('../common'); const bench = common.createBenchmark(main, { n: [1e3], length: [500, 1000], scenario: ['identical', 'small-diff', 'medium-diff', 'large-diff'], }); function main({ n, length, scenario }) { const actual = Array.from({ length }, (_, i) => `${i}`); let expected; switch (scenario) { case 'identical': // 0% difference expected = Array.from({ length }, (_, i) => `${i}`); break; case 'small-diff': // ~5% difference expected = Array.from({ length }, (_, i) => { return Math.random() < 0.05 ? `modified-${i}` : `${i}`; }); break; case 'medium-diff': // ~25% difference expected = Array.from({ length }, (_, i) => { return Math.random() < 0.25 ? `modified-${i}` : `${i}`; }); break; case 'large-diff': // ~100% difference expected = Array.from({ length }, (_, i) => `modified-${i}`); break; } bench.start(); for (let i = 0; i < n; i++) { util.diff(actual, expected); } bench.end(n); }