Classについて
Classを使うことで効率の良いコードが書ける様になる 積極的に使おう
定義
似たようなオブジェクトを生成するための設計図
クラス構文の使い方
定義する
class User {}
インスタンス化する
new User();
定義時に書けるもの
constructor関数
インスタンス化された時に最初に実行される関数
class User {
constructor(name, age) {
this.name = name;
this.age = age;
}
}
省略記法のメソッド
インスタンス化されたオブジェクトのプロトタイプに登録される
class User {
greeting() {
hogehoge....
}
post() {
fugafuga....
}
}
フィールド(新機能)
プロパティを直接定義できる
どの様なオブジェクトが生成されるかわかりやすくなる
class User {
id = 120;
hasChild = true;
}
#を使ってプライベートなプロパティを定義する
クラス内でしかアクセスできないプロパティ
class User {
#id = 120;
#hasChild = true;
get id() {
return this.#id;
}
}
const user1 = new User;
console.log(user1.id); // 120
console.log(user1.hasChild); // getterがないのでエラー
getter,setter,staticの使い方
getter,setter
class User {
get greeting() {}
set post() {}
}
static
class User {
static greeting(){}
}
プロトタイプに登録されずにクラスに直接定義される