Tests:
  • Array.prototype.push

    AخA
     
    var arr = ['hello', true, 7];
    arr.push(1);
  • spread operator

     
    var arr = ['hello', true, 7];
    arr = [...arr, 1];
  • Array.prototype.push multiple

     
    var arr = ['hello', true, 7];
    arr.push(1);
    arr.push(2);
    arr.push(3);
  • spread operator multiple

     
    var arr = ['hello', true, 7];
    arr = [...arr, 1, 2, 3];
  • Array.prototype.push.apply

     
    var arr = ['hello', true, 7];
    Array.prototype.push.apply(arr, [1, 2, 3]);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    Array.prototype.push
    spread operator
    Array.prototype.push multiple
    spread operator multiple
    Array.prototype.push.apply

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 2 years ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36
Chrome 103 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
Array.prototype.push 52061640.0 Ops/sec
spread operator 29609108.0 Ops/sec
Array.prototype.push multiple 51852296.0 Ops/sec
spread operator multiple 26545592.0 Ops/sec
Array.prototype.push.apply 6247772.0 Ops/sec