Array push vs spread operator 2

Compare the new ES6 spread operator with the traditional push() method
2 years ago
User agent: 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
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
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]);
Open this result on MeasureThat.net