Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36
Chrome 96
Mac OS X 10.15.7
Desktop
3 years ago
Test name Executions per second
ES6 property (get) 6782617.5 Ops/sec
Getter function 6795922.5 Ops/sec
Directly get 6767289.5 Ops/sec
Script Preparation code:
AخA
 
class Class {
    constructor () {
        this._val = 1
    }
    get value() { return this._val }
    set value(x) { this._val = x }
    getValue() { return this._val }
    setValue(x) { this.val = x }
}
var cls = new Class()
var wtf
Tests:
  • ES6 property (get)

     
    wtf = cls.value
  • Getter function

     
    wtf = cls.getValue()
  • Directly get

     
    wtf = cls._val