Script Preparation code:
AخA
 
var n = 100000; // 100k
function filler(v, i) {
    return i ** 2;
}
Tests:
  • [...Array(n).keys()].map(filler)

     
    [...Array(n).keys()].map(filler);
  • Array.apply(null, { length: 4 }).map(filler)

     
     Array.apply(null, { length: n }).map(filler);
  • Array.from

     
    Array.from({ length: n }, filler);
  • Array(n).fill(undefined).map(filler)

     
    Array(n).fill(undefined).map(filler)
  • for loop push

     
    const arr = [];
    for (let i = 0; i < n; i++) {
      arr.push(filler(null, i));
    }
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    [...Array(n).keys()].map(filler)
    Array.apply(null, { length: 4 }).map(filler)
    Array.from
    Array(n).fill(undefined).map(filler)
    for loop push

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 4 months ago)
Mozilla/5.0 (X11; Linux x86_64; rv:133.0) Gecko/20100101 Firefox/133.0
Firefox 133 on Linux
View result in a separate tab
Test name Executions per second
[...Array(n).keys()].map(filler) 111.6 Ops/sec
Array.apply(null, { length: 4 }).map(filler) 69.3 Ops/sec
Array.from 357.3 Ops/sec
Array(n).fill(undefined).map(filler) 141.3 Ops/sec
for loop push 436.4 Ops/sec