JavaScript Class 构築者メソッド

定義と使用法

constructor() メソッドは、クラス内で作成されるオブジェクトを生成および初期化するための特別なメソッドです。

クラスを初期化する際に、constructor() メソッドは自動的に呼び出され、実際には「constructor」という正確な名前を使用する必要があります。実際には、あなたが構築メソッドを持っていない場合、JavaScriptは見えない空の構築メソッドを追加します。

注意:クラスは複数の constructor() メソッドを使用できません。これにより、以下のエラーが発生します SyntaxError

以下を使用できます super() メソッドを使用して親クラスのコンストラクタを呼び出す(以下の例を参照)。

インスタンス

例 1

「Car」クラスを作成し、その上で「mycar」という名前のオブジェクトを作成します:

class Car {
  constructor(brand) {  // コンストラクタ
    this.carname = brand;
  }
}
mycar = new Car("Ford");

自分で試してみる

例 2

クラスの継承を作成するには、以下を使用してください extends キーワード。

クラスを継承することで作成されたクラスは、他のクラスから全てのメソッドを継承します。

「Model」という名前のクラスを作成し、それが「Car」クラスのメソッドを継承します:

class Car {
  constructor(brand) {
    this.carname = brand;
  }
  present() {
    return 'I have a ' + this.carname;
  }
}
class Model extends Car {
  constructor(brand, mod) {
    super(brand);
    this.model = mod;
  }
  show() {
    return this.present() + ', it is a ' + this.model;
  }
}
mycar = new Model("Ford", "Mustang");
document.getElementById("demo").innerHTML = mycar.show();

自分で試してみる

super() メソッドは親クラスを参照します。

コンストラクタ内で呼び出すことにより super() メソッド、親クラスのコンストラクタを呼び出し、親クラスの属性やメソッドにアクセスすることができます。

文法

constructor(パラメータ)

技術詳細

JavaScript バージョン: ECMAScript 2015 (ES6)

ブラウザのサポート

メソッド Chrome IE Firefox Safari Opera
constructor() 49.0 13.0 45.0 9.0 36.0

関連ページ

JavaScript 教程:JavaScript クラス

JavaScript 教程:JavaScript ES6 (EcmaScript 2015)

JavaScript リファレンスマニュアル:extends キーワード

JavaScript リファレンスマニュアル:super キーワード