Script Preparation code:
Tests:

Historical Performance Data aggregated from 162 community runs

Desktop Results:
Chrome 121 runs
Push Loop
6.0M/s
Push Spread
4.9M/s
Push Apply
4.8M/s
spread operator
4.6M/s
Array.prototype.concat
3.0M/s

Fastest: Push Loop (2.0x faster)

View exact numbers
  • Push Loop: 5,997,214 ops/sec
  • Push Spread: 4,891,612 ops/sec
  • Push Apply: 4,803,800 ops/sec
  • spread operator: 4,591,722 ops/sec
  • Array.prototype.concat: 3,032,768 ops/sec
Firefox 25 runs
Push Loop
14.2M/s
Push Apply
6.8M/s
Array.prototype.concat
6.7M/s
Push Spread
6.5M/s
spread operator
3.3M/s

Fastest: Push Loop (4.3x faster)

View exact numbers
  • Push Loop: 14,233,791 ops/sec
  • Push Apply: 6,840,387 ops/sec
  • Array.prototype.concat: 6,696,434 ops/sec
  • Push Spread: 6,531,420 ops/sec
  • spread operator: 3,312,764 ops/sec
Other 5 runs
Push Loop
7.0M/s
Push Spread
6.4M/s
Push Apply
6.4M/s
spread operator
5.0M/s
Array.prototype.concat
1.7M/s

Fastest: Push Loop (4.0x faster)

View exact numbers
  • Push Loop: 7,028,604 ops/sec
  • Push Spread: 6,393,014 ops/sec
  • Push Apply: 6,361,276 ops/sec
  • spread operator: 4,953,740 ops/sec
  • Array.prototype.concat: 1,745,334 ops/sec
Mobile Results:
Safari 6 runs
Array.prototype.concat
2.8M/s
spread operator
2.5M/s
Push Loop
2.5M/s
Push Apply
2.0M/s
Push Spread
1.8M/s

Fastest: Array.prototype.concat (1.6x faster)

View exact numbers
  • Array.prototype.concat: 2,830,497 ops/sec
  • spread operator: 2,533,777 ops/sec
  • Push Loop: 2,453,180 ops/sec
  • Push Apply: 2,025,691 ops/sec
  • Push Spread: 1,794,900 ops/sec
Chrome 5 runs
Push Loop
3.0M/s
Push Spread
2.6M/s
Push Apply
2.4M/s
spread operator
1.6M/s
Array.prototype.concat
1.2M/s

Fastest: Push Loop (2.5x faster)

View exact numbers
  • Push Loop: 3,007,518 ops/sec
  • Push Spread: 2,561,331 ops/sec
  • Push Apply: 2,410,088 ops/sec
  • spread operator: 1,576,678 ops/sec
  • Array.prototype.concat: 1,202,235 ops/sec

Results show median performance across all community submissions. Run this benchmark yourself to verify on your device.

Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results
  • Test case name Result
    Array.prototype.concat
    spread operator
    Push Spread
    Push Apply
    Push Loop

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 6 months ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36
Chrome 143 on Mac OS X 10.15.7
View result in a separate tab
Push Loop
25.7M/s
Push Spread
16.1M/s
Push Apply
16.0M/s
spread operator
10.7M/s
Array.prototype.concat
5.7M/s
View exact numbers
Test name Executions per second
Push Loop 25,692,128 Ops/sec
Push Spread 16,123,592 Ops/sec
Push Apply 15,993,000 Ops/sec
spread operator 10,703,835 Ops/sec
Array.prototype.concat 5,736,924 Ops/sec