javascript クラスを作成してみる

javascript クラスを作成してみる

javascriptでも他の言語と同じようにクラスを実装することができるので、簡単なクラスを使用したサンプルコードを記述してます。

環境

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

クラス使用

以下のように、javascriptでも他の言語と同じようにクラスを作成することが可能です。

class hoge {

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

const bar = new hoge(); // コンストラクタを実行
bar.foo(); // fooを実行

以下のように継承することも可能です。

class hoge {

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

  foo() {
    console.log('fooを実行');
  }
}

// 継承
class exhoge extends hoge {
}

const bar = new exhoge(); // 親クラスのコンストラクタを実行 結果は同じ
bar.foo(); // 親クラスのfooを実行 結果は同じ

またクラス内は、常にstrictモードとなります。

class hoge {

  constructor() {
    x = 1; // Uncaught ReferenceError: x is not defined
    console.log('コンストラクタを実行');
  }

  foo() {
    console.log('fooを実行');
  }
}

firefox102の場合は、以下のエラーとなります。

Uncaught ReferenceError: assignment to undeclared variable x