1'use strict'; 2 3const common = require('../common'); 4 5const bench = common.createBenchmark(main, { 6 n: [1e5], 7 pos: ['start', 'middle', 'end'], 8 size: [10, 100, 500], 9}, { flags: ['--expose-internals'] }); 10 11function main({ n, pos, size }) { 12 const { spliceOne } = require('internal/util'); 13 const arr = new Array(size); 14 arr.fill(''); 15 let index; 16 switch (pos) { 17 case 'end': 18 index = size - 1; 19 break; 20 case 'middle': 21 index = Math.floor(size / 2); 22 break; 23 default: // start 24 index = 0; 25 } 26 27 bench.start(); 28 for (let i = 0; i < n; i++) { 29 spliceOne(arr, index); 30 arr.push(''); 31 } 32 bench.end(n); 33} 34