私が見たクラスパターンは、次のようなものになります。
class Foo {
constructor(x, y, z) {
this._x = x;
this._y = y;
this._z = z;
}
get x() {
return this._x;
}
set x(value) {
//I acctually do some stuff here
this._x = value;
}
get y() {
return this._y;
}
set y(value) {
//I acctually do some stuff here
this._y = value;
}
get z() {
return this._z;
}
set z(value) {
//I acctually do some stuff here
this._z = value;
}
}
console.log(new Foo('x', 'y', 'z'))
実行出力:
Foo { _x: 'x', _y: 'y', _z: 'z' }
console.log(JSON.stringify(new Foo('x', 'y', 'z')))
実行出力:
{"_x":"x","_y":"y","_z":"z"}
これにより、アンダースコアのプレフィックス付きフィールドが得られますが、それを目指していませんでした。フィールドにアンダースコアのプレフィックスを持たないようにするにはどうすればよいですかinstance.prop
。