Closed2
【JavaScript】クラス

ファクトリ関数とコンストラクタ関数
ファクトリ関数
同じようなオブジェクトを複数作る際、ファクトリ関数を用意すれば効率的に量産できる。
const UserFactory = (name, age) => {
return {
name,
age,
greeting() {},
};
};
const user1 = UserFactory("Yama", 22);
const user2 = UserFactory("Sakai", 44);
コンストラクタ関数
JS はコンストラクタ関数というものを用意しており、それでもオブジェクトの量産が可能。
以下のように new
を使って呼び出した関数のことを、コンストラクタ関数という。
const UserConstructor = function(name, age) {
this.name = name,
this.age = age
this.greeting = function() {}
}
const user1 = new UserConstructor("Yama", 22);
const user2 = new UserConstructor("Sakai", 44);
ただ、このコンストラクタ関数、普通の「関数」として使われるのか「コンストラクタ関数」として使われるのか判断がつかない・・・。そこで、class
が登場する。

クラス
以下のようにクラスを作成できる。
class User {
constructor(name, age) {
this.name = name;
this.age = age;
}
greeting() {}
}
const user1 = new User("Yamada", 22);
console.log(user1);
クラスは、コンストラクタ関数の上位互換なので、基本はクラスを使用する。
このスクラップは2024/12/23にクローズされました