STUDY MEMO

勉強した内容をアウトプットしていきます。

<javascript ES6> コンストラクタ

 コンストラクタは、javaと異なり、クラス名で表記せず、

constructor(){}で表記する。

 

コンストラクタの中で、生成されたインスタンスにプロパティと値を追加する時は下記のようにthisを使用する。

 

this.プロパティ = 値

 

例:

class Food{
 constructor(){
  this.name = "卵"; //プロパティと値を追加
  this.price = 20;
 }
}

 

const food = new Food(); //インスタンスの生成

console.log(`種類: ${food.name}`);
console.log(`金額: ${food.price}`);

 

結果

f:id:kabacho23:20200902215452p:plain
 

 

インスタンスごとに値を変えたい場合、constructor()の中に引数名を入れ、

インスタンス生成のnew クラス名()の中に引数に入れたい値を入れる。

 

例:

class Food {
 constructor(name,price) {
  this.name = name; //コンストラクタのnameに引数nameを代入
  this.price = price;
 }
}


const food = new Foodl("卵",20);

console.log(`名前: ${food.name}`);
console.log(`金額: ${food.price}`);

 

 

結果

f:id:kabacho23:20200902223153p:plain

 

 

イメージは下図のような感じ。

f:id:kabacho23:20200902223105p:plain