EMZETT.
Login

Kurz: Mit Bedingungen entscheidet dein Programm, welcher Code läuft.

Teil des Kurses JavaScript

Kapitel 8 von 40 im Kurs JavaScript (Abschnitt „Programmablauf“). Mit Fortschritt, Quiz und Zertifikat auf der Lernseite.

Mit Bedingungen entscheidet dein Programm, welcher Code läuft.

if, else if, else

const punkte = 73;
if (punkte >= 90) {
  console.log("sehr gut");
} else if (punkte >= 75) {
  console.log("gut");
} else if (punkte >= 50) {
  console.log("bestanden");
} else {
  console.log("nicht bestanden");
}

Ausgabe:

bestanden

Die Bedingung steht in runden Klammern, der Code in geschweiften. Es wird nur der erste passende Zweig ausgeführt.

Tipp

Auch bei einzeiligen Zweigen solltest du geschweifte Klammern setzen. Das vermeidet Fehler beim späteren Erweitern.

Wahr und falsch

Bedingungen müssen kein echtes true sein: Jeder Wert gilt als truthy oder falsy (siehe Datentypen).

const name = "";
if (!name) console.log("Name fehlt");
const liste = [];
if (liste.length === 0) console.log("Liste leer");
const user = null;
if (user?.admin) console.log("Admin"); else console.log("kein Admin");

Ausgabe:

Name fehlt
Liste leer
kein Admin

Mehrere Bedingungen verbinden

const alter = 25, mitglied = true;
if (alter >= 18 && mitglied) console.log("Zutritt");
if (alter < 6 || alter > 65) console.log("Rabatt");
if (!(alter < 18)) console.log("volljährig");

Ausgabe:

Zutritt
volljährig

switch

Wenn du einen Wert mit vielen festen Möglichkeiten vergleichst, ist switch übersichtlich:

const tag = 3;
switch (tag) {
  case 1:
    console.log("Montag");
    break;
  case 2:
    console.log("Dienstag");
    break;
  case 6:
  case 7:
    console.log("Wochenende");
    break;
  default:
    console.log("Unter der Woche");
}

Ausgabe:

Unter der Woche

break beendet den Fall. Ohne break läuft der Code in den nächsten Fall weiter (Fall-through), was oft ein Fehler ist, aber hier für 6 und 7 gewollt genutzt wird. switch vergleicht mit ===.

Alternative: Objekt als Nachschlagetabelle

const namen = { 1: "Montag", 2: "Dienstag", 3: "Mittwoch" };
console.log(namen[2] ?? "unbekannt");
console.log(namen[9] ?? "unbekannt");

Ausgabe:

Dienstag
unbekannt

Ternär und Early Return

Kurze Entscheidungen schreibst du mit ? :. In Funktionen hilft das frühe Beenden (early return), um verschachtelte if-Blöcke zu vermeiden:

function preis(alter) {
  if (alter < 0) return "ungültig";
  if (alter < 6) return 0;
  if (alter < 18) return 5;
  return 10;
}
console.log(preis(-1), preis(4), preis(12), preis(40));

Ausgabe:

ungültig 0 5 10

Merke

  • if, else if, else: nur der erste passende Zweig läuft
  • Immer geschweifte Klammern setzen
  • Bedingungen nutzen truthy/falsy-Werte
  • switch vergleicht mit === und braucht break
  • Früh zurückgeben statt tief zu verschachteln

Übungsaufgabe

Schreibe eine Funktion, die zu einer Temperatur “kalt” (unter 10), “mild” (10 bis 24) oder “warm” (ab 25) zurückgibt, einmal mit if und einmal mit switch(true).

Quiz zur Selbstkontrolle

Weiter im Kurs

Zurück: Text: Strings

Weiter: Schleifen

Alle Kapitel: JavaScript im Überblick