Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36
Chrome 103
Windows
Desktop
2 years ago
Test name Executions per second
Array.prototype.concat 3173171.0 Ops/sec
Lodash concat 1477295.9 Ops/sec
Array.prototype.push.apply() 1593175.8 Ops/sec
spread operator 2926733.5 Ops/sec
cached for + push 498665.3 Ops/sec
HTML Preparation code:
AخA
 
1
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
 
var arr1 = ["what", "is", "this"];
var arr2 = ["this", "is", "a", "test", "hello", "how", "are", "you", "today"];
Tests:
  • Array.prototype.concat

     
    var result = arr1.concat(arr2);
  • Lodash concat

     
    var result = _.concat(arr1, arr2);
  • Array.prototype.push.apply()

     
    Array.prototype.push.apply(arr1, arr2);
  • spread operator

     
    var result = [arr1, ...arr2]
  • cached for + push

     
    for (var i = 0, l = arr2.length; i < l; i++) {
      arr1.push(arr2[i])
    }