diff --git a/benchmark/url/url-searchparams-update.js b/benchmark/url/url-searchparams-update.js new file mode 100644 index 00000000000000..23c1625ab629fe --- /dev/null +++ b/benchmark/url/url-searchparams-update.js @@ -0,0 +1,23 @@ +'use strict'; +const common = require('../common.js'); + +const bench = common.createBenchmark(main, { + searchParams: ['true', 'false'], + property: ['pathname', 'search'], + n: [1e6], +}); + +function main({ searchParams, property, n }) { + const url = new URL('https://nodejs.org'); + if (searchParams === 'true') url.searchParams; + + const method = property === 'pathname' ? + (n => url.pathname = `/${n}`) : + (n => url.search = `?${n}`); + + bench.start(); + for (let i = 0; i < n; i++) { + method(n); + } + bench.end(n); +}