Script Preparation code:
x
 
function toBind(param) {
  return param * 2;
}
function bind() {
  var rnd = Math.random();
  return toBind.bind(null, rnd);
}
function closure() {
  var rnd = Math.random();
  return inner;
  function inner() {
    return rnd * 2;
  }
}
var bound = bind();
var closed = closure();
Tests:
  • create bind

     
    var fnc = bind();
  • create closure

     
    var fnc = closure()
  • use bind

     
    bound();
  • use closure()

     
    closed();
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    create bind
    create closure
    use bind
    use closure()

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 years ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36 Edg/91.0.864.59
Chrome 91 on Windows
View result in a separate tab
Test name Executions per second
create bind 4427413.5 Ops/sec
create closure 5577151.0 Ops/sec
use bind 17292338.0 Ops/sec
use closure() 17266328.0 Ops/sec