今回も繰り返し処理です。ループ処理の流れを変える方法を考えます。
1 break 文とは
ループ処理の流れは break 文で変えることができます。
書式
while(条件式){
行わせたい処理
条件式
break;
}
書式例は上記のようになります。
この例では、ループの条件式内に break を記述しているため、処理の途中でこの while ループを抜けることができます。
まずは通常のループ処理です。
HTML(コード入力)
<!DOCTYPE html>
<html lang="ja">
<head>
<title>breakなし</title>
<meta charset="UTF-8">
</head>
<body>
<p>breakなし
<script>
let a = 0;
while(a < 7){
document.write(a + " ");
a++;
}
</script>
</p>
</body>
</html>
ブラウザ(実行結果)
breakなし
ループ処理によって、変数 a に「0」から「6」までが代入され、document.write が計7回実行されました。
条件式と break を置いてみましょう。
HTML(コード入力)の一部
<p>breakあり
<script>
let b = 0;
let c = 0;
while(b < 7){
document.write(b + " ");
b++;
c = b * 2
if(c > 9){
break;
}
}
</script>
</p>
ブラウザ(実行結果)
breakあり
この例では、変数 b のほかに、新たに c ( b の倍数)という変数を作っています。
そしてループ内の処理(document.write、b++)のあと、変数 c の値を判断して、c が「9」より小さいときは、break によりこのループ処理を抜けるようにしています。
ループ処理を抜けるタイミングは、c > 9 のとき、つまり c が「10」のときですから、このとき b の値は「5」です。
そして、その直前の document.write における変数 b の値は b++ の処理の前なので「4」です。
したがって、変数 b の値が「0」から「4」までの間、計5回 document.write が実行されることになります。
2 continue 文とは
ループ処理の流れは continue 文でも変えることができます。
書式
while(条件式){
条件式
continue;
行わせたい処理
}
書式例は上記のようになります。
この例では、ループの条件式内に continue を記述しているため、以降の処理は実行されず、while ループの先頭まで戻ります。
ループ処理が終了するのではなく、ある条件を満たしたときだけ、行わせたい処理を実行せずにループ処理を継続する点に注意です。
まずは通常のループ処理です。
HTML(コード入力)
<!DOCTYPE html>
<html lang="ja">
<head>
<title>continueなし</title>
<meta charset="UTF-8">
</head>
<body>
<p>continueなし
<script>
let d = 0;
while(d < 7){
d++;
document.write(d + " ");
}
</script>
</p>
</body>
</html>
ブラウザ(実行結果)
continueなし
ループ処理によって、変数 d に「0」が代入されループ処理が始まります。
まず d++ と記述されていることから「1」から処理が開始されます。
そして、変数 d の値が「7」になったときの処理 document.write が実行されたあと、条件式 d < 7 が判断されループから抜けることになります。
次は上記の break と異なる位置に条件式と continue を置いてみましょう。
HTML(コード入力)の一部
<p>continueあり
<script>
let e = 0;
while(e < 7){
e++;
if(e == 3){
continue;
}
document.write(e + " ");
}
</script>
</p>
ブラウザ(実行結果)
continueあり
この例では、変数 e の増分処理 e++ と、document.write との間に、条件式と continueを挿入しています。
ループ内でまず変数 e に「1」が足されて、変数 e の値が「1」で処理がスタートします。
この if 文では、変数 e の値が「3」のときに、その下の処理 document.write を実行せずに先頭に戻るという記述です。
したがって、変数 e の値が「1」のときは、そのまま document.write が実行されます。
そして、変数 e の値が「3」のときに、この if 文の条件式を満たすために、document.write は実行されず、そのまま先頭に戻ることになります。
繰り返しますが、戻ってもループ処理自体は継続(コンティニュー)します。
ですので、実行結果を見ると、「3」という数値だけが抜けていますね。
なお、for 文でも同じように、break や continue を使うことができます。
3 次回
さて次回は、これまた重要な「コレクション」(いわゆる配列)についてみていきます。
カテゴリー
更新記事
- 『会社四季報 2024年 3集 夏号』を読む 11(オリゴマー、エッジAI、MLCC、ジルコニウム、アセチレンガス、ファインケミカル)
- 『会社四季報 2024年 3集 夏号』を読む 10(フラッシュハンドル、自動配膳ロボット、R-SUD、レコメンド機能、マーチャンダイジング、エレクトロニクスガス、コーシャ認証)
- 『会社四季報 2024年 3集 夏号』を読む 9(ペロブスカイト太陽電池、プロテイン、銀だこ、尿素SCR、エクソソーム)
- 『会社四季報 2024年 3集 夏号』を読む 8(ドミナント、EBITDA、SAF、消防車、キャンプ用品、GIGAスクール、ボウリング場)
- 『会社四季報 2024年 3集 夏号』を読む 7(MD、パーム椰子、GMS、EC、デジタルサイネージ、ハラール認証、ヴィーガンコスメ)
- 『会社四季報 2024年 3集 夏号』を読む 6(BIM、CMS、つけまつげ、CDMO、BNPL、EDI、CRM)
- 『会社四季報 2024年 3集 夏号』を読む 5(アグリゲーション、EMS、BPO、のれん、カカオ豆、オーツミルク)
- 『会社四季報 2024年 3集 夏号』を読む 4(SEP、社内起業、ZEP、VPP、DOE、バイオセンサー、PBX)
- 『会社四季報 2024年 3集 夏号』を読む 3(海上油田、シェールオイル、カーボンクレジット、キャッシュフロー経営、軽量気泡コンクリート、医療観光、洋上風力発電)
- テーマ株投資(5か月)
- 『会社四季報 2024年 3集 夏号』を読む 2
- 『会社四季報 2024年 3集 夏号』を読む 1
- JavaScript でDOM 2
- JavaScript でDOM 1
- JavaScript でオブジェクト 5
- JavaScript でオブジェクト 4
- JavaScript でオブジェクト 3
- JavaScript でオブジェクト 2
- JavaScript でオブジェクト 1
- JavaScript で関数 3
- JavaScript で関数 2
- JavaScript で関数 1
- JavaScript で配列 6
- JavaScript で配列 5
- JavaScript で配列 4
- テーマ株投資(3カ月目)
- JavaScript で配列 3
- JavaScript で配列 2
- JavaScript で配列 1
- JavaScript で「繰り返し」2
- 『チーズはどこへ消えた?』を読む 2
- 『チーズはどこへ消えた?』を読む 1
- JavaScript で「繰り返し」1
- JavaScript で「もし」3
- テーマ株投資(2カ月目)
- JavaScript で「もし」2
- 「記憶」本 5冊を読む 3
- 「記憶」本 5冊を読む 2
- 「記憶」本 5冊を読む 1
- テーマ株投資(1カ月半)
- 「睡眠」本 6冊を読む3(夜間・朝の行動)
- 「睡眠」本 6冊を読む2(昼間の行動)
- テーマ株投資(1か月目)
- JavaScript で「もし」1
- JavaScript で変数3
- 「睡眠」本 6冊を読む1(理論)
- JavaScript で変数2
- テーマ株投資(第3週目)
- JavaScript でヘンな数
- 「メモ」本 6冊を読む2(メモの方法)
- テーマ株投資(第2週目)
- JavaScript で足し算
- 「メモ」本 6冊を読む1(メモの意義)
- テーマ株投資(第1週目)
- JavaScript で「こんにちは世界」
- 「コーチング」本 6冊を読む
- はじめてのテーマ株投資
- JavaScript とは
- 「怒り」「アンガーマネジメント」本 7冊を読む
- JavaScript を始めてみる
- 初めての自動給水器
- 「ブランディング」本 6冊を読む
タグ
break (1) class (3) collection (6) continue (1) CSS (2) DOM (2) for (1) function (3) HTML (8) if (2) JavaScript (28) object (5) pop (1) push (1) shift (1) switch (1) unshift (1) VBA (1) while (2) アンガーマネジメント (1) インソース (1) ココナラ (9) コーチング (1) チーズ (2) ネズミ (2) ノート (2) パーソルホールディングス (1) ブランディング (1) ブランド (1) プログリット (1) ポート (1) メモ (2) リスキリング (1) 変数 (3) 学習 (1) 小人 (2) 怒り (1) 株式 (18) 睡眠 (3) 給水器 (1) 記憶 (3) Aoba-BBT (9) IGS (9) Kラーニング (1)