Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
concat vs push vs spread performance(more data)
Compare the new ES6 spread operator with the traditional concat() method and push
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.1 Safari/605.1.15
Browser:
Safari 17
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Concat
3492272.0 Ops/sec
Spread operator
6827447.0 Ops/sec
Push
1099583.2 Ops/sec
Tests:
Concat
var a = [ "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7 ]; var b = [ 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2 ]; var c = a.concat(b);
Spread operator
var a = [ "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7 ]; var b = [ 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2 ]; var c = [ ...a, ...b ]
Push
var a = [ "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7, "hello", true, 7 ]; var b = [ 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2 ]; var c = a.push(...b);