/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
benchmark/url/url-searchparams-mutation.js
43 строки
956 B
Gürgün Dayıoğlu
url: optimize URLSearchParams set/delete duplicate handling
26 апр 2026, 12:04
Не верифицирован
26 апр 2026, 12:04
c202696
Код
Авторство
О чём код?
'use strict'; const common = require('../common.js'); const bench = common.createBenchmark(main, { method: ['set', 'delete'], type: ['unique', 'duplicates'], count: [10, 1000], n: [1e4], }); function buildSeed(type, count) { const parts = new Array(count); if (type === 'duplicates') { for (let i = 0; i < count; i++) { parts[i] = `dup=${i}`; } } else { for (let i = 0; i < count; i++) { parts[i] = `k${i}=${i}`; } } return new URLSearchParams(parts.join('&')); } function main({ method, type, count, n }) { const seed = buildSeed(type, count); const key = type === 'duplicates' ? 'dup' : 'k0'; const mutate = method === 'set' ? (params) => params.set(key, 'updated') : (params) => params.delete(key); for (let i = 0; i < 1e3; i++) { mutate(new URLSearchParams(seed)); } bench.start(); for (let i = 0; i < n; i++) { mutate(new URLSearchParams(seed)); } bench.end(n); }