WHILE文を使って条件が満たされるまで処理を繰り返す
ホームページやブログなどのウェブサイトで JacaScript を使用する際に、WHILE文を使って 条件が満たされるまで処理を繰り返す方法をご紹介します。この構文は、最初から条件が満たされていなかった場合は、処理は一度も実行されません。
while ( 条件 ) 実行する処理
- 条件:処理を繰返し実行する条件を指定します。条件式が偽になったら繰返しを抜けて、以降のスクリプトを実行します。
- 実行する処理:条件が真の間に繰返し実行する処理を指定します。実行する処理が複数の場合は、{}で括ります。
サンプルです。このサンプルでは、初期値が i = 0 で、i が 10 以下のとき処理を繰り返します。繰返し処理の中で処理を1回実行するごとに i++ で i を1 づつ増加していきますので、11 回処理を実行したところで 繰返しを終了します。
このサンプルのソースは、次のようになっています。
<SCRIPT LANGUAGE="JavaScript">
<!--
i = 0 ; j = 0 ;
while ( i < 11 ) { j = j + i ; i++ ; }
document.write( " 0 + 1 + 2 + 3 + 5 + 6 + 7 + 8 + 9 + 10 = " , j ) ;
\\-->
</SCRIPT>
<!--
i = 0 ; j = 0 ;
while ( i < 11 ) { j = j + i ; i++ ; }
document.write( " 0 + 1 + 2 + 3 + 5 + 6 + 7 + 8 + 9 + 10 = " , j ) ;
\\-->
</SCRIPT>
次のサンプルは、メールフォームなどでテキストボックスに入力されたメールアドレスを確認するものです。空欄かどうかのチェック、『 XXX@XXX.XXX 』の形式になっているかどうか、全角文字が混入していないかを簡易的にチェックします。全角文字の混入のチェックの部分で WHILE文を使用しています。
サンプルですので、適当にテキストボックスに入力して 確認ボタンを押してみてください。上記の条件でOK 、NG をチェックします。
このサンプルのソースは、次のようになっています。
<SCRIPT LANGUAGE="JavaScript">
<!--
function check() {
function checkNG() {
//-->
</SCRIPT>
<body>
<form name="mailform">
メールアドレスを入力してください。<br>
<input type="text" name="mail" size="20">
<input type="button" value="確認" onClick="check()">
</form>
<!--
function check() {
mail = document.mailform.mail.value ;
if ( mail =="" || mail.indexOf( "@",0 ) < 0 ) {
data_1 = mail.split("@") ;
data_2 = data_1[1].split(".") ;
if ( data_1[0] =="" || data_1[1].indexOf( ".",0 ) < 0 || data_2[0] =="" || data_2[1] =="" ) {
i = 0 ;
while ( i < mail.length ) {
alert( "メールアドレスのチェックはOKでした。") ;
}
if ( mail =="" || mail.indexOf( "@",0 ) < 0 ) {
checkNG();
return false; }
return false; }
data_1 = mail.split("@") ;
data_2 = data_1[1].split(".") ;
if ( data_1[0] =="" || data_1[1].indexOf( ".",0 ) < 0 || data_2[0] =="" || data_2[1] =="" ) {
checkNG();
return false; }
return false; }
i = 0 ;
while ( i < mail.length ) {
if ( mail.charCodeAt( i ) > 129 ) {
checkNG();
return false; }
i++ ;
}return false; }
alert( "メールアドレスのチェックはOKでした。") ;
}
function checkNG() {
alert( "メールアドレスが正しくありません。") ;
}
}
//-->
</SCRIPT>
<body>
<form name="mailform">
メールアドレスを入力してください。<br>
<input type="text" name="mail" size="20">
<input type="button" value="確認" onClick="check()">
</form>
ランキングに参加中です! お役に立てたらクリックをお願いします→
コンピュータとインターネット > データ形式 > HTML > リファレンス