TOP →
覚え書き →
JavaScript → This Page
JavaScript テクニック
擬似的オーバーロード
擬似的オーバーロード
Java, C# などで良く使われるオーバーロードですが、残念ながら JavaScript では
サポートされていません。
しかし、arguments オブジェクトを利用することで擬似的にオーバーロードを実装することが可能です。
<html>
<head>
<script language="javascript">
<!--
function form_Load()
{
AAA("aaa");
AAA("bbb", "ccc");
}
function AAA(aaa, bbb)
{
if (arguments.length == 1) {
// 引数が1つの場合
AAA1(aaa);
} else {
// 引数が2つ以上の場合
AAA2(aaa, bbb);
}
}
function AAA1(param1)
{
alert("Call AAA1. Param[" + param1 + "]");
}
function AAA2(param1, param2)
{
alert("Call AAA2. Param[" + param1 + "," + param2 + "]");
}
-->
</script>
</head>
<body onload="form_Load();">
</body>
</html>
|
実行してみると引数の数によってそれぞれの関数が呼ばれることが確認できると思います。
上記サンプルのダウンロード(ZIP圧縮)
TOP →
覚え書き →
JavaScript → This Page