0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[JavaScript] クラス、コンストラクタ、プロパティ、メソッドについて

Posted at

まとめ

クラスとは

クラスはオブジェクトを作成するためのテンプレートです。処理するためのコードでデータをカプセル化します。
mdn web docs

コンストラクタとは

クラスで作成したオブジェクトを作成して初期化するための特別なメソッドです。 "constructor" という名前の特別なメソッドは、クラスに 1 つしか定義できません。クラスに複数の constructor メソッドが存在した場合、SyntaxError が発生します。
mdn web docs

メソッドとは

メソッドはクラスごとにプロトタイプに定義され、すべてのインスタンスで共有されます。メソッドには、プレーン関数、非同期関数、ジェネレーター関数、非同期ジェネレーター関数があります
mdn web docs

目次

使用するコード

//クラス
class Person {
//コンストラクタ(特別なメソッド)
  constructor(name, age) {
//プロパティ
    this.name = name;
    this.age = age;
  }
//メソッド
  greet() {
    console.log('Hello, ' + this.name);
  }
}

//クラスを用いたインスタンスの生成
const john = new Person('John', 30);

// インスタンスのメソッドの呼び出し
john.greet(); // 出力: Hello, John

クラスとは

  • オブジェクトを生成するための設計図(テンプレート)です。クラスにはプロパティとメソッドを定義することができ、そのクラスから生成されたオブジェクトはそれらのプロパティとメソッドを継承します。
クラス
class Person {
  // クラスの中身(プロパティとメソッド)を定義
}

解説

  • Personという名前のクラスを定義しています。このクラスは、人の情報を表現するためのプロパティとメソッドを持ちます。

コンストラクタとは

  • クラスから新しいインスタンス(オブジェクト)が生成されるときに呼び出される特別なメソッドです。コンストラクタを使って、インスタンスの初期化を行います。
コンストラクタ
constructor(name, age) {
  this.name = name;
  this.age = age;
}

解説

  • constructorは、クラスのインスタンスが作成されるときに実行される特別なメソッド(コンストラクタ)です。
  • nameageはコンストラクタの引数で、新しいインスタンスのnameageプロパティを初期化するために使われます。
  • this.name = nameによって、クラスのインスタンスのnameプロパティが初期化されます。同様に、this.age = ageによってageプロパティが初期化されます。

プロパティとは

クラスのインスタンスが持つデータや属性を表します。プロパティは、コンストラクタ内で初期化され、クラスのインスタンスによって保持されます。

プロパティ
  this.name = name;
  this.age = age;

解説

  • nameagePersonクラスのプロパティです。
  • これらのプロパティは、クラスのインスタンスごとに異なる値を持つことができます。

メソッドとは

  • クラスやオブジェクトに関連付けられた関数です。メソッドはクラスのインスタンスによって呼び出され、インスタンスのプロパティにアクセスしたり、操作を行ったりします。
メソッド
greet() {
  console.log('Hello, ' + this.name);
}

解説

  • greetPersonクラスのメソッドです。
  • このメソッドはthis.nameプロパティを使用して、挨拶のメッセージをコンソールに表示します。

活用例1

Personクラスを使ってインスタンスを生成し、そのインスタンスのメソッドを呼び出します。

const john = new Person('John', 30);

john.greet(); // 出力: Hello, John

解説

  • const john = new Person('John', 30)Personクラスの新しいインスタンスを生成します。このとき、constructorメソッドが呼び出されnameageが設定されます。
  • johnPersonクラスのインスタンスです。johnインスタンスにはnameプロパティとしてJohnageプロパティとして30が設定されています。
  • john.greet()johnインスタンスのgreetメソッドを呼び出します。このメソッドは、Hello, Johnというメッセージをコンソールに出力します。

参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?