昔のプログラムをちょっと直してみた

クラス勉強したんで、ダイヤモンドゲームのプログラム書き直そう!と思って、とりあえず全然関係ないノーマルモードの設定のプログラムをみてみたら、クラスとか関係なしに意外と酷かった^^
変数名は晒すのが恥ずかしい感じだし、同じ様な事が沢山書いてある。。

というわけでホント少しですが直してみました。

*まず変更前


function syokika(){
for(i=0;i<4;i++){
if(document.hito.p1[i].checked == true){
iro1 = document.hito.p1[i].value;
}else if(document.hito.p2[i].checked == true){
iro2 = document.hito.p2[i].value;
}else if(document.hito.p3[i].checked == true){
iro3 = document.hito.p3[i].value;
}
}
}
とりあえずこの関数はonload()で呼ばれる関数で、iro1~iro3に各プレイヤーが最初に選択している色の番号を格納するというものです。
再読み込みとかも考慮してるからこんなことしてるんですかね。。多分(何

さて、まずこれを見た瞬間if文自重と思ったので、if文を消してみることにしました。
それから変数名ひどすぎだと思ったので、それもついでに変えてることにしました。

*変更後


function initialize(){
color1 = set(document.config.prayer1);
color2 = set(document.config.prayer2);
color3 = set(document.config.prayer3);
}

function set(checkbox) {
for(i=0;i<4;i++){
if(checkbox[i].checked == true){
return checkbox[i].value;
}
}
}

結果、if文が一個になりました。それからとりあえず自分の中では人に見せられる変数名になりました。
でもまだ全然改善できそうな気がする。。
color1~3を配列にしちゃってfor文で回すのもありかな?今度試してみようかな。。