Sha256: df2b76aa60463b7d6be5babe7cfdf90cbb6bb312746c14dcc044c7650ef7e1f3
Contents?: true
Size: 946 Bytes
Versions: 5
Compression:
Stored size: 946 Bytes
Contents
'use strict'; const common = require('../common.js'); const bench = common.createBenchmark(main, { method: ['normal', 'destructureObject'], millions: [100] }); function runNormal(n) { var i = 0; var o = { x: 0, y: 1 }; bench.start(); for (; i < n; i++) { /* eslint-disable no-unused-vars */ var x = o.x; var y = o.y; var r = o.r || 2; /* eslint-enable no-unused-vars */ } bench.end(n / 1e6); } function runDestructured(n) { var i = 0; var o = { x: 0, y: 1 }; bench.start(); for (; i < n; i++) { /* eslint-disable no-unused-vars */ var { x, y, r = 2 } = o; /* eslint-enable no-unused-vars */ } bench.end(n / 1e6); } function main(conf) { const n = +conf.millions * 1e6; switch (conf.method) { case 'normal': runNormal(n); break; case 'destructureObject': runDestructured(n); break; default: throw new Error('Unexpected method'); } }
Version data entries
5 entries across 4 versions & 1 rubygems