コンストラクタは、引数を受け取ることができる。
可変長引数(個数が決まっていない引数)の受け渡しについては、可変長引数付きコンストラクタのページへ。
構文
function コンストラクタ名 ( 仮引数A1, 仮引数A2, 仮引数A3, … 仮引数AN ) // コンストラクタを定義
{
this.プロパティ名 = 値; // プロパティを定義
this.メソッド名 = function ( 仮引数B1, 仮引数B2, 仮引数B3, … 仮引数BN ) { // メソッドを定義
メソッド内処理文;
}
}
var オブジェクト名 = new コンストラクタ名( 実引数A1, 実引数A2, 実引数A3, … 実引数AN ); // オブジェクトのインスタンスを作成
オブジェクト名.プロパティ名; // プロパティを呼び出す
オブジェクト名.メソッド名( 実引数B1, 実引数B2, 実引数B3, … 実引数BN ); // メソッドを呼び出す
{
this.プロパティ名 = 値; // プロパティを定義
this.メソッド名 = function ( 仮引数B1, 仮引数B2, 仮引数B3, … 仮引数BN ) { // メソッドを定義
メソッド内処理文;
}
}
var オブジェクト名 = new コンストラクタ名( 実引数A1, 実引数A2, 実引数A3, … 実引数AN ); // オブジェクトのインスタンスを作成
オブジェクト名.プロパティ名; // プロパティを呼び出す
オブジェクト名.メソッド名( 実引数B1, 実引数B2, 実引数B3, … 実引数BN ); // メソッドを呼び出す
サンプル
<script type="text/javascript">
function PersonalData ( $arg1, $arg2 ) // コンストラクタを定義
{
this.$attendanceNumber = $arg1; // プロパティを定義
this.$attendanceNumberWrite = function () { // メソッドを定義
document.write( '出席番号:' + this.$attendanceNumber + '<br />' );
}
this.$name = $arg2; // プロパティを定義
this.$nameWrite = function () { // メソッドを定義
document.write( '名前:' + this.$name + '<br />' );
}
}
var $PersonalData = new PersonalData( '13007', '日本太郎' ); // オブジェクトのインスタンスを作成
document.write( '出席番号:' + $PersonalData.$attendanceNumber + '<br />' );
document.write( '名前:' + $PersonalData.$name + '<br />' );
var $PersonalData = new PersonalData( '13020', '日本花子' ); // オブジェクトのインスタンスを作成
$PersonalData.$attendanceNumberWrite();
$PersonalData.$nameWrite();
</script>
function PersonalData ( $arg1, $arg2 ) // コンストラクタを定義
{
this.$attendanceNumber = $arg1; // プロパティを定義
this.$attendanceNumberWrite = function () { // メソッドを定義
document.write( '出席番号:' + this.$attendanceNumber + '<br />' );
}
this.$name = $arg2; // プロパティを定義
this.$nameWrite = function () { // メソッドを定義
document.write( '名前:' + this.$name + '<br />' );
}
}
var $PersonalData = new PersonalData( '13007', '日本太郎' ); // オブジェクトのインスタンスを作成
document.write( '出席番号:' + $PersonalData.$attendanceNumber + '<br />' );
document.write( '名前:' + $PersonalData.$name + '<br />' );
var $PersonalData = new PersonalData( '13020', '日本花子' ); // オブジェクトのインスタンスを作成
$PersonalData.$attendanceNumberWrite();
$PersonalData.$nameWrite();
</script>
↓↓↓出力結果↓↓↓