構造関数:
構造関数はオブジェクトを作る時に専用の関数です。
構造関数は普通の関数ですが、最初のアルファベット文字は大文字です。
構造関数と普通の関数について、呼び出し方に違いがあります。
例: function Person(){
}
構造関数の呼び出し方:
var per = new Person();
普通関数の呼び出し方:
var per = Person();
構造関数実行の流れ:
- 新しいオブジェクトを作成します
- 新しく作ったオブジェクトを関数のthisに設定します.
構造関数の中にthisで新しいオブジェクトを引用することができます。
(例:per を thisに設定します)。 - 関数の処理を実行します。
- 新しく作ったオブジェクトを戻り値として返します。
引数と設置し、代入することはできます。
同じ構造関数を使用し作られたオブジェクトは、インスタンスと呼びます。構造関数のことをクラスと言います。
instanceofを使って、インスタンスはクラスに属しているかをチェックすることができます。
構文: インスタンス instanceof クラス
必ず覚えておくこと:
構造関数で呼び出す時、thisは新しく作ったオブジェクトです!!
関数で呼び出す時、thisはwindowです。
メソッドで呼び出す時、thisを使った対象はthisになります。