JavaScript while文 無限ループの中断(break)
JavaScript while文 無限ループの中断(break) について記載したいと思います。
【復習】
【while文】
- while文は、()によって指定されている条件が真の間中括弧内{ }で囲まれた処理ブロックが繰り返し実行される。 注意!)つまり、真(true)で有り続ける繰り返し条件を記述してしまった場合、無限ループとなり、最悪メモリーを使い果たしてPCがダウンする可能性有り。
-
while文は、for文と違い、条件を( )中に全て書くわけでは無い。
-
繰り返しの条件を微妙に変えられるので、for文と違い、変数は自分で決める事が出来る。(for文はⅰのみを使用。)
変数の初期値;
while(繰り返し条件;){
実行される処理
変数の変更
}
【問題】whileを使用して、下記の様に表示させなさい。
- 正解は5のみ
- 5が入力された場合 → 正解です。
- 10以下5超過が入力された場合 → もっと小さい数字を入力してして下さい。
- 10以下5未満が入力された場合 → もっと大きい数字を入力してして下さい。
<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>ループの中断</title>
</head>
<body>
<script>
var ans =5;
var num;
var msg ='1~10までの数字を入力して下さい';
while(true){ <!-- trueを( )に記載する事により、永遠に繰り返してOKの条件(無限ループの条件)を作っている為、必ずbreakを記載する事。/>
num=prompt(msg,'半角数字を入力');
if(ans==num){ <!--正解だったら-->
document.write('<h1>正確です</h1>');
break;
}
if (num <ans){
msg ='もっと大きい数を入力してください';
}else if(num>ans){
msg='もっと小さい数字を入力してください';
}else{
msg='数を入力してください';
}
}
</script>
</body>
</html>