関数について
-
0 名前: アラン : 2005/06/15 17:22
- 例えばここのサンプルの「時計を表示する」「残り日数を表示する」「文字をスクロール」
の3つを1ページでやる場合にまとめて
<SCRIPT TYPE="text/javascript">
<!--
function disp(){
サンプル1の内容
サンプル2の内容
サンプル3の内容
}
// -->
</SCRIPT>
</HEAD>
<BODY onLoad="disp()">
それぞれの内容の表示
で可能だと思うのですが、これは何か問題ありますでしょうか?
それとも
<SCRIPT TYPE="text/javascript">
<!--
function disp1(){
サンプル1の内容
}
function disp2(){
サンプル2の内容
}
function disp3(){
サンプル3の内容
}
// -->
</SCRIPT>
</HEAD>
<BODY onLoad="disp1();disp2();disp3()">
それぞれの内容の表示
とすべきなのででしょうか?
一応まとめてしまっても動いてるようなので問題なさそうなのですが…
-
1 名前: Pid : 2005/06/15 17:22
- メンテナンスしやすいかどうかの問題です。
ひとつの関数の中に異なる働きを持つ処理を詰め込むと,コードが読みづらくなってバグのもとになります。だから,普通は異なる働きを持つ処理を別々の関数にします。
今回の場合,もとの関数を分解するのではなく
function LoadEventHandler() {
function disp1() { ...... }
function disp2() { ...... }
function disp3() { ...... }
disp1();
disp2();
disp3();
}
<body onload="LoadEventHandler();">
のように,もとの関数を包み込む大きな関数を作っておくのが良いと思います。