Script Preparation code:
x
 
var data = { a: 1, b: 2, c: 3, d: 4, e: 5, f: 6, g: 7 }
function f1(a, b, c, d, e, f, g) {
  return a + b + c + d + e + f + g;
}
function f2(p) {
  return p.a + p.b + p.c + p.d + p.e + p.f + p.g;
}
Tests:
  • Multiple parameters

     
    f1(data.a, data.b, data.c, data.d, data.e, data.f, Math.random())
  • Existing parameter object

     
    data.g = Math.random();
    f1(data)
  • Parameter object with spreading

     
    f1({ ...data, g: Math.random() })
  • New parameter object

     
    f1({ a: 1, b: 2, c: 3, d: 4, e: 5, f: 6, g: Math.random() })
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    Multiple parameters
    Existing parameter object
    Parameter object with spreading
    New parameter object

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 4 days ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.4 Safari/605.1.15
Safari 18 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
Multiple parameters 177283120.0 Ops/sec
Existing parameter object 8750170.0 Ops/sec
Parameter object with spreading 7620630.5 Ops/sec
New parameter object 8060096.0 Ops/sec