Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
concat vs lodash.concat vs. push.apply vs. spread operator vs. push in for loop
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Safari/605.1.15
Browser:
Safari 17
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Benchmark engine:
Benchmark.js
Array.prototype.concat
8.4M/s
spread operator
801K/s
Array.prototype.push.apply()
436K/s
Lodash concat
360K/s
cached for + push
144K/s
View exact numbers
Test name
Executions per second
✓
Array.prototype.concat
8,353,360 Ops/sec
spread operator
801,254 Ops/sec
Array.prototype.push.apply()
436,079 Ops/sec
Lodash concat
359,709 Ops/sec
cached for + push
143,971 Ops/sec
HTML Preparation code:
<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]) }