javascript クラスを使ってgetter・setterを実装する

javascript クラスを使ってgetter・setterを実装する

javascriptで、クラスを使ってgetter・setterを実装するサンプルコードを記述してます。

環境

  • OS windows10 pro 64bit
  • Apache 2.4.43
  • ブラウザ chrome 103.0.5060.114

getter・setter

javascriptでも、以下のようにクラスを使ってgetter・setterを実装することが可能です。

class hoge {
  constructor() {
    console.log('コンストラクタを実行');
  }

  set name(name) {
    this._name = name;
  }
 
  get name() {
    return this._name;
  }
 
  foo() {
    console.log(`nameは${this._name}です`);
  }
}
 
const bar = new hoge(); // コンストラクタを実行
bar.name='hello';
bar.foo(); // nameはhelloです

bar.name='world';
bar.foo(); // nameはworldです

実行結果

this._nameと関数の名前を同じにするとループになるため、注意してください。