開眼!JavaScriptメモ

はじめに

開眼!JavaScriptのメモです。

1章 JavaScriptオブジェクト

JavaScriptはオブジェクト(名前と値を持つプロパティを格納するコンテナ)で値を表現する。
また、プリミティブ型を除くほとんどの値にコンストラクタ関数によるオブジェクトの生成、インスタンス化が関わっている。
このコンストラクタから返されたオブジェクトはインスタンスと呼ぶ。

※プロパティは静的な情報になるが、関数で動的にすることができる。
※コンストラクタ関数の役割はある程度共通の性質やふるまいを持ったオブジェクトを複製生成すること。

Object()やString()などの組み込みコンストラクタ関数による生成。

var cody = new Object(); // Object()を作成
caody.living = true;
cody.age = 33;
cody.gender = "male";
cody.getGender = function(){
  return cody.gender;
}

コンストラクタ関数を自作する。

var Person = function(living, age, gender){
  // thisはここで生成される新たなオブジェクト( this = new Object(); )
  this.living = living;
  this.age = age;
  this.gender = gender;
  this.getGender = function(){ return this.gender; };
  // 関数がnew演算子とともに呼ばれた場合はreturn文がなくてもthisを返す。
}

var cody = new Person(true, 33, "male");
console.log(cody)

👉コンストラクタ関数を自作する方が、オブジェクトを複製しやすくなるため汎用的。

 

コメントを残す