すぐ実行すると結果は分かりますが、自分がどこを誤解したか分からないまま終わる場合があります。先に予測してから答え合わせします。
練習コード
const scores = [40, 80, 65];
const passed = scores
.filter((score) => score >= 60)
.map((score) => score + 5);
console.log(passed);
実行前に書く
scoresの初期値:
filter後の配列:
mapで各値がどう変わるか:
最終的な出力:
予測は [85, 70] です。実行して一致するか確認します。
間違いを分類する
- 条件式の読み違い
- 元配列が変わると思った
- メソッドの戻り値を誤解した
- 処理順を逆に読んだ
間違えた理由が、次に練習する小さな課題になります。
関数にも使う
入力例を一つ決め、引数、各行の値、戻り値を追います。非同期処理では、Promiseが返る時点と完了時点を分けます。