Script Preparation code:
AخA
 
var numbers = [...Array(1000).keys()]
var arr = [numbers, numbers, numbers, numbers, numbers]
Tests:
  • concat

     
    var results = arr.reduce((acc, cur) => acc.concat(cur), []);
  • spread operator

     
    var results = arr.reduce((acc, cur) => [...acc, ...cur], []);
  • push with spread operator

     
    var results = arr.reduce((acc, cur) => {
      acc.push(cur);
      return acc;
    }, []);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    concat
    spread operator
    push with spread operator

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 4 years ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36
Chrome 86 on Windows
View result in a separate tab
Test name Executions per second
concat 154852.3 Ops/sec
spread operator 38546.2 Ops/sec
push with spread operator 9046918.0 Ops/sec