'use strict'; const common = require('../common.js'); const bench = common.createBenchmark(main, { type: ['Double', 'Float'], endian: ['LE'], value: ['zero', 'big', 'small', 'inf', 'nan'], n: [1e6] }); function main({ n, type, endian, value }) { type = type || 'Double'; const buff = Buffer.alloc(8); const fn = `read${type}${endian}`; const values = { Double: { zero: 0, big: 2 ** 1023, small: 2 ** -1074, inf: Infinity, nan: NaN, }, Float: { zero: 0, big: 2 ** 127, small: 2 ** -149, inf: Infinity, nan: NaN, }, }; buff[`write${type}${endian}`](values[type][value], 0); bench.start(); for (let i = 0; i !== n; i++) { buff[fn](0); } bench.end(n); }