Script Preparation code:
x
 
var obj = {};
var _a = 1;
obj._a = 1;
obj.aGetter = function() {
  return _a;
}
obj.aSetter = function(val) {
  _a = val;
}
Object.defineProperty(obj, 'a', {
  enumerable: true,
  get: function () {
    return _a;  
  },
  set: function(val) {
    _a = val;
  }     
});
Tests:
  • obj.aSetter(2);

     
    obj.aSetter(2);
  • obj.aGetter();

     
    obj.aGetter();
  • obj.a = 2;

     
    obj.a = 2;
  • obj.a;

     
    obj.a;
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    obj.aSetter(2);
    obj.aGetter();
    obj.a = 2;
    obj.a;

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: one year ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 Edg/119.0.0.0
Chrome 119 on Windows
View result in a separate tab
Test name Executions per second
obj.aSetter(2); 9841142.0 Ops/sec
obj.aGetter(); 12081125.0 Ops/sec
obj.a = 2; 9862920.0 Ops/sec
obj.a; 11977549.0 Ops/sec