Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
rest parameters vs arguments (no extra args)
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (iPhone; CPU iPhone OS 18_3_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3.1 Mobile/15E148 Safari/604.1
Browser:
Mobile Safari 18
Operating system:
iOS 18.3.2
Device Platform:
Mobile
Date tested:
one year ago
Test name
Executions per second
arguments
2101.3 Ops/sec
rest parameter
2711.2 Ops/sec
Script Preparation code:
window.els = []; function t1() { window.els.push(...arguments); } function t2(...args) { window.els.push(...args); }
Tests:
arguments
window.els.length = 0; for (let i = 0; i < 2000; i++) { if (i % 3 === 0) { els.push(t1('div', {class: 'foo'}, i, i + 1, i + 2)); } else { els.push(t1('div', {class: 'foo'}, i)); } }
rest parameter
window.els.length = 0; for (let i = 0; i < 2000; i++) { if (i % 3 === 0) { els.push(t2('div', {class: 'foo'}, i, i + 1, i + 2)); } else { els.push(t2('div', {class: 'foo'}, i)); } }