Script Preparation code:
AخA
 
var array1 = Array(400).fill().map(() => Math.round(Math.random() * 40));
var array2 = Array(400).fill().map(() => Math.round(Math.random() * 40));
var array3 = Array(400).fill().map(() => Math.round(Math.random() * 40));
var array4 = Array(400).fill().map(() => Math.round(Math.random() * 40));
var array5 = Array(400).fill().map(() => Math.round(Math.random() * 40));
Tests:
  • Array.concat

     
    var others = array1.concat(array2, array3, array4, array5);
  • Array.prototype.concat.apply

     
    var others = Array.prototype.concat.apply([], [array1, array2, array3, array4, array5]);
  • Array.prototype.concat.apply short form

     
    var others = [].concat.apply([], [array1, array2, array3, array4, array5]);
  • Array.prototype.concat.apply short form without new empty array instance in apply

     
    var others = [].concat.apply(array1, [array2, array3, array4, array5]);
  • Array.prototype.concat.apply short form without new empty array at all

     
    var others = array1.concat.apply(array1, [array2, array3, array4, array5]);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    Array.concat
    Array.prototype.concat.apply
    Array.prototype.concat.apply short form
    Array.prototype.concat.apply short form without new empty array instance in apply
    Array.prototype.concat.apply short form without new empty array at all

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: one month ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
Chrome 132 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
Array.concat 2282107.8 Ops/sec
Array.prototype.concat.apply 2223793.2 Ops/sec
Array.prototype.concat.apply short form 2242323.2 Ops/sec
Array.prototype.concat.apply short form without new empty array instance in apply 2260469.0 Ops/sec
Array.prototype.concat.apply short form without new empty array at all 2358585.5 Ops/sec