S_F__ 2014-01-07 06:29:32

[JavaScript] 絶対に実行されない条件 このエントリーをはてなブックマークに追加

投稿者からのアピールポイント

とある人から頂いたコード。 彼は一体何がしたかったのか今でも分からない。 コメントは後から付け足したものです。

コメント修正しました。

function kusai(){
 var unko=0;
 if(document.unko.unko11.checked){unko+=10} //ブロック使うまでもないだろうに
 if(document.unko.unko12.checked){unko+=20} //しかも2択のラジオスイッチ…else使えよ
 if(document.unko.unko21.checked){unko+=5}  //2択のくせにname同じにしないとか…
 if(document.unko.unko22.checked){unko+=30} //これも2択ラジオ
 document.unko.unko3.value=unko;
}

function kusai2(){
 var unko1=0;
 if(document.unko.unko3.value){ //どうやらkusaiが実行されているか知りたいらしい
  if(unko1>0&&unko<10){ //unko1は0のままなので当然false。もう一つはkusaiのローカル変数を参照したいようです
   document.unko.unko4.value="自称";
  }
  else if(document.unko.unko3.value){ //同じ比較を二回している
   if(unko1>11&&unko<20){
    document.unko.unko4.value="普通";
   }
   else{
    document.unko.unko4.value="名人";
   }
  }
 }
}

コメント(8)

#1 c_9_l 2013-12-27 00:53:57  

unko1は0のままじゃ…?

#2 S_F__ 2013-12-27 04:09:43  

このタイトルで僕は何が言いたかったかというと、 定数と定数を比較して何になるのかということです。

#3 tkcomcom1is 2014-01-05 10:17:41  

あんまりこういうことを言いたくないですが……

コメントが冗長で意味が分からないです。簡潔に説明してください。

読点がないから、読みづらいったらありゃしない。
その16行目ですが、よく観察すれば無駄な比較であるのは分かるので、せめて「同じ比較をしている」くらいでいいのに。
何が言いたいかというとこのコメントは冗長ではないかということだ。

その冗長なコメントせいで、c_9_lさんのコメントを読むまでアピールポイントが全然分かりませんでした。

#5 S_F__ 2014-01-07 06:30:23  

すみません修正しました

#6 c_9_l 2014-01-08 04:29:07  

nameが違うのにelse使ったらまずい気が。
全部押せてしまうのでは?全て未選択状態だったら困るし。
どれとどれがペアなのか次第でもあるけれど…。

2択に見えて実は2択でない場合は、尚更。

元となっているであろうHTMLか何か、とある人が結局何をしたかったのかに纏わる事が書かれているのはありがたい(私たちは知ることも見ることも出来ないから)けど、それ以外は惑わせるだけ。

#7 S_F__ 2014-01-15 10:41:56  

これを書いた人が言ったのです。「二択にしたのにどっちも選択できる!なんで!?」

#8 c_9_l 2014-02-11 01:14:38  

ならば、
//コードを書いた人が「二択にしたのにどっちも選択できる!なんで!?」と言っていた。
//どっちも選択できるのはnameが違うからだよ!
コードry//2択のグループAにしたかったらしい
コードry//2択のグループAにしたかったらしい
コードry//2択のグループBにしたかったらしい
コードry//2択のグループBにしたかったらしい
とかいうコメントの方がいいかもしれませんね。


このウンコードに臭った人は、こちらのウンコードにも臭ってます

[Java] フルHD推奨。

このエントリーをはてなブックマークに追加

画面の左側がわりと無駄な気がします。

public int hoge(){
    int result = 0;
...

鑑賞する »

[C] 動くんだ・・

このエントリーをはてなブックマークに追加

そら、文法的に間違ってはいないよ。でもさ...

if (foo == x) switch (foo) {
 default:
...

鑑賞する »

[JavaScript] これではまった

このエントリーをはてなブックマークに追加

しばらくなやんだよ。なんでだよといいたか...

var a=b=3,//これはOK
before=result=new Arr...

鑑賞する »