ゼロから始めるプログラム言語サイトのトップへ

第7回 JavaScript講座 繰り返しで、同じ仕事を何度も書かない

第7回。全3ページを続けて読めます。

JavaScript講座・全10回 / 第5回 / 1ページ目(全3ページ)

掲載日:2026年9月13日

商品100個を、1個ずつ書くつもり?

ある日、KAZUは商品一覧を見ながら考えていました。

洗剤、ゴミ袋、手袋、ペーパータオル……。

商品が増えてきました。

KAZU
全部の在庫を確認して、発注が必要なものだけ出したい。
JavaScript
商品一覧をください。順番に確認します。

KAZUは、最初こう書こうとしました。

console.log("洗剤");
console.log("ゴミ袋");
console.log("手袋");

3個なら書けます。

でも、100個なら100行です。

KAZU
これ、商品が増えるたびに書き足すの?
JavaScript
同じ仕事なら、繰り返しにしましょう。

そこで、商品を一つの一覧にまとめます。

const 商品 = ["洗剤", "ゴミ袋", "手袋"];

そして、順番に取り出します。

for (const 名前 of 商品) {
  console.log(名前);
}

JavaScriptくんは、洗剤、ゴミ袋、手袋と順番に処理します。

商品が10個になっても100個になっても、同じ仕組みで進められます。

人が繰り返す仕事は、機械が得意

プログラムの強みの一つは、同じ手順を何度でも繰り返せることです。

人は100回同じ確認をすると疲れます。

JavaScriptくんは、100回でも1000回でも、同じ指示なら同じように実行します。

第5回の第一歩:同じ形の処理を何度も書き始めたら、「繰り返しにできないか」を考える。

JavaScript講座・全10回 / 第5回 / 2ページ目(全3ページ)

掲載日:2026年9月13日

合計が合わない。途中経過を見せてもらう

次は、商品の金額を合計します。

const 金額一覧 = [300, 500, 200];
let 合計 = 0;

for (const 金額 of 金額一覧) {
  合計 = 合計 + 金額;
}

正しい合計は1000円です。

ところが、ある日、KAZUが作った計算では結果が合いません。

KAZU
どこで間違ったんだ? 最後の数字だけ見ても分からない。

そこで、JavaScriptくんに途中経過を報告してもらいます。

for (const 金額 of 金額一覧) {
  合計 = 合計 + 金額;
  console.log("途中の合計", 合計);
}

表示は、

  • 300
  • 800
  • 1000

と進みます。

もし2回目で急におかしくなれば、その周辺を調べればよいと分かります。

最後だけではなく、途中を見る

これは、デバッグの基本的な考え方です。

「最終結果が違う」だけでは、原因の場所が分かりません。

途中の値を見えるようにすると、どこまでは正しく、どこからおかしいかを絞り込めます。

KAZU
仕事でも、最後の数字だけ合わないより、途中の集計を見た方が原因を探しやすいね。
AI
同じです。プログラムでも「途中を見える化する」と原因を追いやすくなります。

確認のコツ:結果が違ったら、途中の値を表示して「どこから違うか」を探す。

JavaScript講座・全10回 / 第5回 / 3ページ目(全3ページ)

掲載日:2026年9月13日

便利な繰り返しほど、間違えると一気に広がる

JavaScriptくんは、繰り返し処理が得意です。

でも、その便利さには注意も必要です。

もし条件を間違えたまま100件を処理すれば、100件まとめて間違えます。

KAZUは、発注が必要な商品だけを出す処理を作ります。

for (const 商品 of 商品一覧) {
  if (商品.在庫 <= 商品.最低在庫) {
    console.log(商品.名前 + ":発注");
  }
}

ここでは、商品を1件ずつ取り出し、その商品の在庫と最低在庫を比較しています。

正しければ、とても便利です。

でも、もし比較記号を逆に書けば、在庫が十分ある商品ばかり発注対象にするかもしれません。

最初は3件で試す

いきなり100件の本番データで試すより、まず3件だけ用意します。

商品在庫最低在庫期待
洗剤12発注
手袋52発注不要
ゴミ袋22発注

これなら、

  • 発注になる商品
  • 発注にならない商品
  • 境目ちょうどの商品

を一度に確認できます。

KAZU
少ないデータで確認してから、本番の件数に増やす方が安全なんだね。
JavaScript
はい。私は指示されたことを高速で繰り返します。だから、指示が正しいかを先に確かめてください。

JavaScriptくんの得意なところと、怖いところが同じ場所にあります。

速く、何度でも、同じ処理をする。

正しい指示なら強力です。

間違った指示でも、やはり高速です。

第5回まとめ:繰り返しは、大量の同じ作業を任せる仕組み。小さいデータで確認し、条件と途中経過を見てから件数を増やす。

ここまでで、JavaScriptくんには「計算」「値の保持」「判断」「繰り返し」という仕事を任せられるようになりました。

少しずつ、単なるボタンの動きから「システムらしい処理」へ近づいてきました。