0Pricing
JavaScript Academy · レッスン

Early ReturnとGuard Clause

early returnとguard clauseで条件を簡潔にし、ネストを減らして、正常系の流れを明確にします。

「Early ReturnとGuard Clause」はCoddyKit上の無料JavaScript Academyレッスンです。 これはレッスン3/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJavaScript Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 JavaScript Academyコースには全3レッスンが含まれています。

導入

目標: 無効な入力に対して早期に戻ることで、正常系を短く保ち、より明快な関数を書きます。

  • 早期リターン
  • ガード節
  • ネストの削減
Early ReturnとGuard Clause — イラスト1

ガード節を使わない場合

ネストによって主要な処理が if の内側に押し込まれるため、読みにくくなりやすくなります。

// Nested style without guard
function welcome(name) {
  if (name) {
    const message = "Hello, " + name + "!";
    console.log(message);
  } else {
    console.log("Name required");
  }
}

welcome("Ayla");
welcome("");
Early ReturnとGuard Clause — イラスト2

ガード節へのリファクタリング

無効な入力を最初に処理し、その後はインデントを減らした正常系を書きます。

// Guard clause: return early for bad input
function welcomeSafe(name) {
  if (!name) {
    console.log("Name required");
    return;
  }
  const message = "Hello, " + name + "!";
  console.log(message);
}

welcomeSafe("Ayla");
welcomeSafe("");
Early ReturnとGuard Clause — イラスト3

複数のガード節

ルールごとに小さなガード節を1つ使ってください。早期リターンを使うたびに、深いネストが不要になります。

// Multiple guard clauses keep each rule small
function divide(a, b) {
  if (typeof a !== "number" || typeof b !== "number") {
    console.log("Numbers only");
    return;
  }
  if (b === 0) {
    console.log("Cannot divide by zero");
    return;
  }
  const result = a / b;
  console.log("Result:", result);
}

divide(6, 3);
divide(6, 0);
divide("6", 3);
Early ReturnとGuard Clause — イラスト4

returnによるネストの削減

失敗するケースでは早期にreturnし、最後の行で成功を明確に返します。

// Early returns reduce else blocks
function canVote(age) {
  if (typeof age !== "number") {
    return false;
  }
  if (age < 18) {
    return false;
  }
  return true;
}

console.log(canVote(20));
console.log(canVote(15));
console.log(canVote("20"));
Early ReturnとGuard Clause — イラスト5

ガード節のヒント

チェックリスト:

  • 最初に入力を検証してください。
  • エラーや特殊なケースでは早期にreturnしてください。
  • 各ガード節を短く具体的に保ってください。
  • 最後に正常系をフラットに記述してください。
Early ReturnとGuard Clause — イラスト6

ガード節クイズ

クイックチェック: ガード節とは何でしょうか。

Early ReturnとGuard Clause — イラスト7

まとめ

まとめ: ガード節を使って不正な入力を最初に処理し、早期にreturnすることで、主要なロジックをフラットで読みやすく保てます。

Early ReturnとGuard Clause — イラスト8

よくある質問

「Early ReturnとGuard Clause」レッスンは無料ですか?

はい。「Early ReturnとGuard Clause」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、JavaScript Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 JavaScript Academyコースには全3レッスンが含まれています。

「Early ReturnとGuard Clause」で何を学びますか?

early returnとguard clauseで条件を簡潔にし、ネストを減らして、正常系の流れを明確にします。 ブラウザで直接実行するハンズオンコードでJavaScript Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

JavaScript Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのJavaScript Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/3です。

「Early ReturnとGuard Clause」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このJavaScript Academyレッスンでコードを書いて実行できますか?

はい。すべてのJavaScript Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. if/elseとswitch――基本パターン
  2. Loop:for、while、do…while、for…ofとfor…in
  3. Early ReturnとGuard Clause
← JavaScript Academyに戻る