/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
v25.7.0
benchmark/es/string-repeat.js
38 строк
835 B
Ruben Bridgewater
benchmark: remove special test entries
10 мар 2020, 00:35
Не верифицирован
10 мар 2020, 00:35
bb6125b
Код
Авторство
О чём код?
'use strict'; const assert = require('assert'); const common = require('../common.js'); const configs = { n: [1e3], mode: ['Array', 'repeat'], encoding: ['ascii', 'utf8'], size: [1e1, 1e3, 1e6], }; const bench = common.createBenchmark(main, configs); function main({ n, size, encoding, mode }) { const character = encoding === 'ascii' ? 'a' : '\ud83d\udc0e'; // '🐎' let str; switch (mode) { case 'Array': bench.start(); for (let i = 0; i < n; i++) str = new Array(size + 1).join(character); bench.end(n); break; case 'repeat': bench.start(); for (let i = 0; i < n; i++) str = character.repeat(size); bench.end(n); break; default: throw new Error(`Unexpected method "${mode}"`); } assert.strictEqual([...str].length, size); }