今日は、JavaScript を自分で拡張する方法です。



「一週間でマスター」 みたいな本には書いてないです。 



これが使えれば、玄人っぽい書き方になるでしょう。



今日のお題は、「prototype の使い方」 です。



prototype といっても、例の prototype.js ではありませんよ。



prototype というのは、JavaScript がもともと持っている仕組みです。JavaScript の変数は全てオブジェクトとして定義されており、全てのオブジェクトが prototype プロパティを持っています。そこにクラスの定義が書いてあるのです。


そして、これが重要なことですが、prototype は動的に書き換え可能なのです


String クラスのような組み込みのクラスも例外ではありません。


有名な prototype.js の名前はもともとここから来ています。




ではさっそく、具体的なサンプルです。



<html>
<head>
<script type="text/javascript">

String.prototype.foo = function(){

alert( this );
}

var a = 'Hello'; // String オブジェクト a を作成
a.foo();
// いきなり foo を呼び出せる!
// なぜなら上で prototype を使って String の foo メソッドを定義していたからです

</script>
</head>
<body>
</body>
</html>



prototype による、クラスの定義・再定義の方法はまた後で説明したいと思います。


JavaScript のすごいところは、こういう風に、String のような組み込みのクラスさえも、自分でシームレスに拡張して使えるところなのです。


今日は prototype の簡単な使い方を示しました。


ではまた!!





C/C++ による Windows プログラミング、JavaScript, PHP を使ったウェブ開発のことなら、

プログラミング徹底解説