Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Array push spread vs Array.prototype.push.apply vs For loop
Compare using array spread and using apply or for loop
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:154.0) Gecko/20100101 Firefox/154.0
Browser:
Firefox 154
Operating system:
Mac OS X 10.15
Device Platform:
Desktop
Date tested:
4 days ago
For loop
26.7M/s
Apply
23.5M/s
spread operator
18.9M/s
View exact numbers
Test name
Executions per second
✓
For loop
26,715,716 Ops/sec
Apply
23,469,984 Ops/sec
spread operator
18,932,256 Ops/sec
Script Preparation code:
var arr = []; var elementsToPush = []; var i = 0; for (i = 0; i < 1000; i++) { arr[i] = { a: 42 }; } for (i = 0; i < 10; i++) { elementsToPush[i] = { a: 42 }; }
Tests:
spread operator
arr = []; arr.push(...elementsToPush)
Apply
arr = []; Array.prototype.push.apply(arr, elementsToPush)
For loop
arr = []; for (i = 0; i < 10; i++) { arr.push(elementsToPush[i]); }