/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
benchmark/es/destructuring-bench.js
50 строк
885 B
Antoine du Hamel
benchmark: add trailing commas
29 янв 2023, 21:13
Не верифицирован
29 янв 2023, 21:13
ca5f322
Код
Авторство
О чём код?
'use strict'; const common = require('../common.js'); const assert = require('assert'); const bench = common.createBenchmark(main, { method: ['swap', 'destructure'], n: [1e8], }); function runSwapManual(n) { let x, y, r; bench.start(); for (let i = 0; i < n; i++) { x = 1; y = 2; r = x; x = y; y = r; assert.strictEqual(x, 2); assert.strictEqual(y, 1); } bench.end(n); } function runSwapDestructured(n) { let x, y; bench.start(); for (let i = 0; i < n; i++) { x = 1; y = 2; [x, y] = [y, x]; assert.strictEqual(x, 2); assert.strictEqual(y, 1); } bench.end(n); } function main({ n, method }) { switch (method) { case 'swap': runSwapManual(n); break; case 'destructure': runSwapDestructured(n); break; default: throw new Error(`Unexpected method "${method}"`); } }