Qual è la differenza e quando preferiresti utilizzare i metodi Object.defineProperty
vs get
/ set
in javascript per getter / setter?
Esempio:
class Foo {
constructor () {
Object.defineProperty(this, 'bar', {
get () {
return this._bar;
},
set (value) {
this._bar = value;
this.extraFunctionCall();
}
})
}
}
vs
class Foo {
get bar () {
return this._bar;
}
set bar (value) {
this._bar = value;
this.extraFunctionCall();
}
}