クラスの書き方(2015年以前の伝統版)【JavaScript】

JavaScriptのクラス(伝統版)の書き方

Inko = function (name) {
  this.namae = name;    
};

Inko.prototype.chirp = function () {
  console.log(this.namae);
};

var souchan = new Inko("sou");
souchan.chirp();    

 


1~7行目まではInkoたこやきの型を作る定義

1~3行目

Inko = function (name) {
  this.namae = name;    
};

thisにはInkoたこやきの参照(C言語でのアドレス)が入っているので、this.namaeはInkoたこやき.namaeといえる

 

5~7行目

Inko.prototype.chirp = function () { //関数を作りprototypeで定義
  console.log(this.namae);
};
たこやきの型にメソッド(この場合はchirp)を定義する時はprototypeを使う。(全たこやきで使える)
たこやきの型にメソッド(chirp)を定義しなかった場合は、各たこやきでメソッドを定義する。

 


9行目
var souchan = new Inko("sou");

新しくインコたこやきを作る処理、裏でthisにInkoたこやきの参照をセットしてコンストラクタ関数(Inko)を呼び出す。

 

10行目
souchan.chirp();

souchanにchirpメソッドは定義されていないため、prototype(5行目)に同じ名前のメソッドがないか探し、あればそれを実行する。無ければエラー

 

コメントを残す

あなたのメールアドレスは公開されません。必須項目には印がついています *