RAREZONE.COM

TOP - JavaScript - Hard - Server - このサイトについて
TOP JavaScript 命令文

命令文

if〜else文
選択処理
for文
white文
break文とcontinue文


if〜else文


ExcelやLotus123等でお馴染みかな?
私が初めてif文に出会ったのはかれこれ10年前
Lotus123でマクロを組んでいる時だったと思います。
if文とは、ある条件で処理を分けたい時に使用します。


if文の記述方法

if(条件式){処理1}
else{処理2}

if文は、条件式が真(true)だったら処理1を行い、
それ以外の時は処理2を行います
条件が複数ある時は、複数のif(条件式){処理1}を設定します
また、処理1と処理2の処理は複数でも構いません
そして、処理がひとつなら{}は省略可であります
もしも条件式にあわない時は何も処理しないのであれば、
elseの処理を省略できます

ぶっちゃけた話、ifとはそのまんま・・「もし!」
「もしも〜だったら〜する〜そうでないなら〜する」
と考えればいいんですね
簡単に書くと

ifもしも(aが1と等しかったら){背景色を青にする}
elseそうでないなら{背景色を赤にする}

なあんだ簡単でしょ?
勿論条件式は上みたいに書いちゃ駄目ですよ
きちんとJavaScriptで書いて下さい・・って当然だけど(笑)
って私も良く分かってないけど・・・(爆)
一応念の為・・・上のような命令をJavaScriptで書くと・・

<SCRIPT LANGUAGE="JavaScript">
<!--
var a=1;  /*←※これは変数の設定*/
if(a==1){
document.bgColor="#0000ff";
}
else{
document.bgColor="#ff0000";
}
//-->
</SCRIPT>

※変数の設定は変数のところを参考にして下さい。

条件式は「aが1と等しかったら」背景色を青にする。
となっているので「var a=1」の「1」を違う数字にすると
背景色が赤になります。


複数の条件でのif文

これからJavaScriptでの処理を作るにあたって、
条件が1個では足りない場面が多々出てくると思います。
そんな時は、ifとelseを組み合わせて複数の条件式を
評価できるようにする事ができます。

if(条件式1){処理1}
else if(条件式2){処理2}
else if(条件式3){処理3}
・・・・・
else{処理}

しかし、この書き方には問題があります。
それは何かといいますと・・・
処理は上から順に行われますが、例えば
条件式1で真(true)になってしまうと、処理1が
実行され、その後の条件式を評価しなくなってしまいます。
要するに抜けてしまうんですね、「あ、もういいのね」てな感じです。

【抜けてしまう例】実行サンプル
<SCRIPT LANGUAGE="JavaScript">
<!--
var a=5;
if(a=5){
document.write("5ですね!!");
}
else if(a>4){
window.alert("4より大きいのね?");
}
//-->
</SCRIPT>

これでは、条件式2の「a>4」が評価されていないので
ただ、「5ですね」を表示しろという処理しか
行われていないのが分かります。

そうではなくて、書いた条件式を全部評価させたい場合は
次のように書いてあげれば良いのです。

if(条件式1){処理1}
if(条件式2){処理2}
if(条件式3){処理3}
・・・・・
else{処理}

こうやって書いてあげれば、全ての条件式を評価して
真(true)になった部分の処理をすべて行います。

【抜けない例】実行サンプル
<SCRIPT LANGUAGE="JavaScript">
<!--
var a=5;
if(a=5){
document.write("5ですね!!");
}
if(a>4){
window.alert("4より大きいのね?");
}
//-->
</SCRIPT>

こうすれば、全ての条件式が評価され、全ての処理が実行されます。
アラートが出て「4より大きいのね?」も実行されている事が確認できます。

▲TOPへ


選択処理〜(条件式)? 値1 : 値2


演算子のところで、説明しましたが・・・
面倒なのでそのまま貼ります・・・(苦笑)
条件式によって、2つある値のうちのひとつの値を返します。


選択処理の記述方法

条件式によって、2つある値のうちのひとつの値を返します。

(条件式)? 値1 : 値2

(条件式)? 値1 : 値2

条件式の部分は、評価すると論理値(trueかfalse)が
返される式にする必要があります。
真(true)ならばこの式が返す値が「値1」になり、
偽(false)ならばこの式が返す値が「値2」になります。

【条件演算子の利用例】
<SCRIPT LANGUAGE="JavaScript">
<!--
kotoba="はじめまして";
v=(kotoba=="はじめまして")?"はじめましてと言っています":"はじめましてと言っていません";
document.write(v);
//-->
</SCRIPT>

【応用実例】
貴方からのあいさつをここに書いてみて下さい。
※実際に動作しまっす。

ソース

↓ここから
<SCRIPT LANGUAGE="JavaScript">
<!--
function kotoba(){
h=document.Youform.you.value;
v=(h=="はじめまして")?"こちらこそはじめまして〜(=^^=)":"「はじめまして」って言ってよ〜〜";
alert(v);
}
//-->
</SCRIPT>

↑ここまでを <HEAD>〜</HEAD>内に記述して

↓ここからがフォーム部分
貴方からのあいさつをここに書いてみて下さい。
<BR>※実際に動作しまっす。
<FORM NAME="Youform">
<INPUT type="text" NAME="you" size=20><BR><BR>
<INPUT type="button" value="書いたら押す" onClick="kotoba()"><BR><BR>
</FORM>

↑ここまでを<BODY>〜</BODY>内に記述しまっす。

▲TOPへ


for文


for文は「継続処理」を設定し、それによって「終了条件」を満たすまで
同じ処理を繰り返し行わせる事ができます。


for文の記述方法

for(初期状態;終了条件;継続処理){処理}

for文は「継続処理」にしたがって値を変化させながら
「終了条件」が真(true)の間は処理を繰り返し実行します。

【for文の書き方例】
for(i=1;i<=10;i++){
処理;
}

これは、「初期状態」が「i=1」で、「終了条件」が「iが10になったとき」
まで、「継続処理」で「iに1を足していく」というfor文になっています。
「継続処理」は、ループ内の処理が終わり次のループに入る前に実行されます。

【for文の実用例1】実行サンプル
<SCRIPT LANGUAGE="JavaScript">
<!--
for(i=1;i<=20;i++){
document.write("これは"+i+"回目<BR>");
}
//-->
</SCRIPT>

「終了条件」で使える演算子は「<、>、<=、>=」です。
これ以外を使うと、ほとんどがエラーになります。
なお、「継続処理」は「i++」以外でも設定できます。
例えば、2ずつ増やしたい場合は、「継続処理」の部分に
「i=i+2」と書いてやれば良いのです。

【for文の実用例2】実行サンプル
<SCRIPT LANGUAGE="JavaScript">
<!--
for(i=1;i<=20;i=i+2){
document.write("これは"+i+"回目<BR>");
}
//-->
</SCRIPT>

▲TOPへ


while文


for文の他に、ループを実現するものとしてwhite文があります。
while文によるループは、ある条件が真(true)である間ループを繰り返します。


while文の記述方法

while(条件式){処理}

条件式は、論理地「真(true)または偽(false)」を返す式ならば
どのような式でも設定する事ができます。

【while文の実用例1】実行サンプル
<SCRIPT LANGUAGE="JavaScript">
<!--
i=1;
while(i<=10){
document.write(i,"回目:あと",10-i,"回繰り返します<BR>");
i++;
}
//-->
</SCRIPT>

このサンプルは、「i」が1から10になるまで繰り返されます。
「i=1」で「i」の初期状態が「1」で、「i++」で「i」に1を足していき
「i<=10」の条件式で、「i」が11になると偽(false)になるのでループから抜けます。

▲TOPへ


break文とcontinue文


for文とwhile文によるループを使いやすくするために
JavaScriptにはbreak文とcontinue文が用意されています
。 これは、for文やwhile文の持っている終了条件の他に、
繰り返し処理中に何らかの条件が成立したらループの処理を変える
といった目的のために使われます 。


break文の記述方法
break文は、ループ処理を行っている最中に、ある条件になったら
そのループから抜け出す処理を行います。

【break文の書き方例】実行サンプル
<SCRIPT LANGUAGE="JavaScript">
<!--
for(i=1;i<=10;i++){
document.write("この文章を10回書く for文 です",i,"回目<BR>");
if(i==4)
break;

}
document.write("<BR>でも・・・・<BR>4で抜けるbreak文があるので、<BR>4回でループを抜けます");
//-->
</SCRIPT>

このサンプルは、「i」が「4」になったら
ループを抜けるように設定しています
「i」が4になったらfor文内の「条件式 if(i==4)」が
真(true)になり「break」によって、ループを抜けます。


continue文の記述方法

conttinue文は、for文やwhile文の繰り返し処理を行っている最中、
ある条件が真(true)になった時のみ、continue以下の処理を飛ばします。
しかし、continueは処理を中断させるのではなく、あくまでも飛ばすだけです。

【continue文の書き方例】実行サンプル
<SCRIPT LANGUAGE="JavaScript">
<!--
for(i=1;i<=10;i++){
if(i==4)
continue;

document.write("この文章を10回書く for文 です",i,"回目<BR>");
}
document.write("<BR>でも・・・<BR>4を飛ばすcontinue文があるので、<BR>4回目だけ処理が飛びます");
//-->
</SCRIPT>

このサンプルは、「条件式if==4」で、真(true)となるので、
「i==4」回目だけ文字を書き出す処理を飛ばしています。

▲TOPへ



[お問い合わせ:hermana@rarezone.com]
Copyright(c)2003 RAREZONE All Rights Reserved.