JavaScriptでオブジェクト生成


htmlからcalc.jsで定義したcalcクラスを生成し、メソッドを呼び出す例


calc.js (クラスを定義したjs)

//コンストラクタ
function calc(width, height) {

  this.width = width;
  this.height = height;
}
//メソッド
calc.prototype.area = function() { 
  return this.width * this.height;
};

※ this.widthとあるがこれはwidthプロパティがあらかじめ定義されているのではなく
この行でwidthプロパティを宣言して、代入しているという点に注意。
JavaScriptは変数をあらかじめ宣言しておかなくて良いのでこのような実装が可能になる。



object.html(呼び出し元のHTML)

<html>
<script type="text/javascript" src="calc.js"></script>
<script>

function click1(){
	//オブジェクトの生成
	var r = new calc(2, 2);
	//メソッドの呼び出し
	alert( r.area());
}
</script>
<body>

	<input type='button' value='test' onclick='click1()'>
<body>
</html>