一人前エンジニア道場

プログラミング基礎(入門) / 約20分

関数と配列: 処理を部品化し、データをまとめて扱う

なぜこれを学ぶか

「同じ処理を何度も書く」のは悪い設計のサイン。関数で部品化し、配列でまとめて処理する——これが実務コードの基本形です。

関数 は処理に名前を付けて再利用する仕組みです。function add(a, b) { return a + b } と定義し、add(1, 2) で呼び出します。

配列 は複数のデータを順番に格納する入れ物です: const scores = [80, 92, 67]。scores[0] で先頭(0から数える!)、scores.length で個数が取れます。

配列の定番メソッド: map(全要素を変換した新配列)、filter(条件に合う要素だけの新配列)、find(条件に合う最初の1件)。これらは元の配列を変更しません。

例: scores.filter(s => s >= 80) は「80点以上だけの配列」。s => s >= 80 は アロー関数 と呼ばれる短い関数の書き方です。

実務のコードの大半は「配列から必要なものを filter/map で取り出す」処理です。この形に慣れると、他人のコードがぐっと読みやすくなります。

重要ポイント

  • 関数 = 処理の部品化、配列 = データのまとまり
  • 配列の添字は 0 始まり
  • map / filter / find は元の配列を変えない

理解度チェック

選ぶと即座に解説が表示されます。

const nums = [1, 2, 3] に対して nums.map(n => n * 2) の結果は?

ヒントを見る

map は「各要素を変換した新しい配列」を返します。元の nums は変わりません。

コーディング演習実際に書く

テストの点数一覧(scores)から「60点以上の合格者だけ」を取り出し、さらにそれぞれに +5点のボーナスを加えた配列を返す関数を書いてください。例: applyBonus([55, 60, 80]) → [65, 85](55は不合格で除外、60→65、80→85)

function applyBonus(scores)

スキルセルフチェック

このレッスンの内容をどの程度理解できましたか?