Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0
Firefox 102
Windows
Desktop
2 years ago
Test name Executions per second
.map(callback) - 1 000 elements 113607.0 Ops/sec
.fill(value) - 1 000 elements 74525.9 Ops/sec
.map(callback) - 10 000 elements 48169.1 Ops/sec
.fill(value) - 10 000 elements 9886.9 Ops/sec
.map(callback) - 100 000 elements 9379.2 Ops/sec
.fill(value) - 100 000 elements 648.6 Ops/sec
Script Preparation code:
AخA
 
var array1000 = (new Array(1000)).map((e, i) => ({a: i, b: i, c: i, d: i, e: i, f: i, g: i, test: 'object'+ i}));
var array10000 = (new Array(10000)).map((e, i) => ({a: i, b: i, c: i, d: i, e: i, f: i, g: i, test: 'object'+ i}));
var array100000 = (new Array(100000)).map((e, i) => ({a: i, b: i, c: i, d: i, e: i, f: i, g: i, test: 'object'+ i}));
Tests:
  • .map(callback) - 1 000 elements

     
    const result = array1000.map(() => true);
  • .fill(value) - 1 000 elements

     
    const result = new Array(array1000.length).fill(true);
  • .map(callback) - 10 000 elements

     
    const result = array10000.map(() => true);
  • .fill(value) - 10 000 elements

     
    const result = new Array(array10000.length).fill(true);
  • .map(callback) - 100 000 elements

     
    const result = array100000.map(() => true);
  • .fill(value) - 100 000 elements

     
    const result = new Array(array100000.length).fill(true);