最近の記事
- 9/1 - 将棋始めました
- 5/16 - サーバー引っ越し
- 4/24 - 優先順位
- 3/17 - vbNullString と 空文字列 ""
- 3/15 - InputBox 関数の戻り値
- 3/13 - 紙と Excel と VBA
- 3/9 - 未だに Visual Basic 6
- 11/14 - ぼて閉鎖
- 11/9 - 関数オブジェクトの呼び出し
- 9/7 - メソッドとしての関数オブジェクト
Entering Passive Mode
function Foo(x, y) {
this.value = x * y;
}
var foo = new Foo(3, 5);
alert(foo.value); // 15
alert(typeof foo); // object
new 演算子で関数オブジェクトを呼び出す事で、
他のプログラミング言語同様、
オブジェクトを生成することができる。
この場合、オペランドである関数オブジェクトは、
一般的にコンストラクタと呼ばれる役割となり、
その関数内部で、オブジェクトの初期化を行う。
さて、この new 演算子だが、
任意の関数オブジェクトに使うことができる。
つまり、自作の関数をコンストラクタにすることが可能だ。
JavaScript では、この仕組みを利用することで、
独自のクラス(のようなもの)を扱うことができる。
関数オブジェクトが new 演算子で呼び出されると、
最初に新しいオブジェクトが作成された後、
関数のコードが実行される。
関数のコード内では、this キーワードを使うことで、
作成されたオブジェクトにアクセスできるので、
そのプロパティを設定することで、
新しいオブジェクトを初期化することができる。
コメント (0 件)