プログラムにおける精度の基本は条件分岐をどのように行えるかのアルゴリズムによるでしょう。
難しい事は後回しにしても、if文を制するものは、アルゴリズムの大波に押しつぶされないことでしょう。
構文
条件分岐は全てif文という何かしらの比較、数式で処理するという事なのですが、基本的な事と応用的な事は分けて考えましょう。
まずは、基本の等式と不等式を確実に覚えましょう。
if(条件分岐の式-1){
処理内容-1
}
else if(条件分岐の式-2){
処理内容-2
}
else{
処理内容-3
}
注意点
1.「if」と「elseif」と「else」は、書いた上位からの順番で処理されるので、順番を考えて組みましょう。
2.「else if」と「else」はそれぞれ省くことができます。
3.「else if」は、何度も記述できます。
sample
var a = 100;
# 等式
if(a==100){
console.log("数値は100");
}
else if(a===100){
console.log("数値は100でnumericタイプ");
}
else if(a==="100"){
console.log("数値は100で文字列タイプ");
}
else{
console.log("数値は100以外");
}
# 不等式
if(a!=100){
console.log("数値は100以外");
}
if(!a==100){//この書き方は非常に解りづらいので、あまりオススメできません。
console.log("数値は100以外");
}
else if(a!==100){
console.log("数値は100以外またはnumericでもないかも");
}
else{
console.log("数値は100");
}
# 比較演算
if(a>100){
console.log("数値は100より大きい");
}
else if(a>=100){
console.log("数値は100以上");
}
else if(a<100){
console.log("数値は100より小さい");
}
else if(a<=100){
console.log("数値は100以下");
}
# その他
if(!a){
console.log("aは0またはblank,null,undefinedです。");
}
else if(a){
console.log("aは1以上または何かの文字列が含まれています");
}
初心者に見られるポイント
インデントの重要性
for文と同じくインデントを気にしないとあとで読み返す時に大変なだけでなく、不具合を見つけるのも困難になるので、意識してインデントを整理する事をクセづけましょう。
論理演算子
&& : AND
|| : OR
上記を組み合わせるとif文の条件式を複数連結させて複雑な式を判定させることが可能になります。
例えば「2以上10以下」などのような場合です。
if文をどんどんネスト(階層化)させていくことでも同じ結果を得られますが、ネストによるインデントはあまり深くならないように注意しましょう。
※非常に汚いプログラムソースになってしまいます。
switch文を使いたいケース
switch文は、非常に綺麗に見えることもあり、こだわっている人は使うケースも少なく無いですが、オススメとしてはif文のみで書いたほうが後からのレビューや各種変更や修正などの際にトラブルが少なくなるはずです。
理由としてはif文とswitch文では、if文の方がより複雑な記述が可能であることと、応用が簡易なため、両方を使い分けるよりも単一の方式にした方が効率がいいというわけです。
オススメポイント
if文は、とにかく色々なケースを経験して応用力がモノを言う構文なので、良いも悪いも含めて自分の手で沢山分岐処理を書くことをオススメします。
たまに人の作ったソースコードを見て勉強するのもありですね。
javascriptであれば、世の中のホームページにたくさん転がっているワケですから、他人のソースコードはいくらでも見られますね。
0 件のコメント:
コメントを投稿