-->
./
<!-- フラ&#65533;ュが見れな&#65533;のためにここに何か書&#65533; --> フラ&#65533;ュがインス&#65533;&#65533;ルされて&#65533;&#65533;たいで&#65533;&#65533;&#65533;

2010年03月22日

JavaScript のプロトタイプチェイン

JavaScriptのプロトタイプチェインをちゃんと理解する - builder by ZDNet Japan

プロトタイプ
  コンストラクタを用いることで、複雑な初期化ができると紹介しました。しかし、コンストラクタは処理だけでオブジェクトを組立てるため、作られるオブジェクトの全貌がソースコードから見渡しにくくなってしまいます。そこで、 JavaScriptではもうひとつのオブジェクト初期化方法を用意しています。それが、プロトタイプです。

プロトタイプとはオブジェクトの雛型となるオブジェクトのことで、コンストラクタが呼び出される前にあらかじめプロパティを与えることができます。

プロトタイプの定義方法は簡単で、コンストラクタのprototypeプロパティにオブジェクトを格納しておくだけです。格納されたオブジェクトがそのク ラスのプロトタイプになります。例えばリスト7の例を、プロトタイプを使ってリスト8のように書くことができます。

 試してみました。文法がちょっとややこしいですが、:がハッシュのような役割をしているようです。無名関数もJavaScriptでは当たり前のように使われています。functionはEmacs-Lispのlambdaと似ています。

var ValEntry = function(title, val) {
  this.title = title;
  this.val = val;
};

ValEntry.prototype = {
  name: "Blog",
  showTitle: function() {
    alert(this.title);
  },
  showVal: function() {         // function
    alert(this.val);
  },
  showFull: function() {
    alert(this.title + "\n" + this.val);
  }

};

var test1 = new ValEntry("たいとる", "データ");
test1.showFull();
alert(test1.name);




posted by hirono at 21:34| Comment(0) | TrackBack(0) | JavaScript
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/36608157

この記事へのトラックバック