Kontrollstrukturen
if/else statements
Javascript kennt if, else und else-if.
if
let canDo = true;
if (canDo) {
//... Do things
}
if und else
if (number % 2) {
console.log(`${number} is odd!`);
} else {
console.log(`${number} is even!`);
}
else-if
nach einem if können beliebig viele if-else folgen und zum Schluss kann ein einfaches else stehen:
if (age < 10) {
console.log(`Children`);
} else if (age < 18) {
console.log(`Teenager`);
} else if (age < 100) {
console.log('Adult');
} else {
console.log('Probably a Vampire');
}
switch statements
switch (note) {
case 1:
console.log("Sehr gut!");
break;
case 2:
console.log("Gut gemacht!");
break;
case 3:
console.log("Befriedigend");
break;
case 4:
console.log("Ausreichend");
break;
default:
console.log("Leider nicht bestanden");
break;
}
Loops (for, while, do-while)
for
Die klassische for-Schleife mit den drei Teilen: Setup, Abbruch-Kondition und Fortsetzung, als getrennte Ausdrücke. for (setup; condition; step)
let result = 0;
for (let i = 0; i < 9; i++) {
result = result + i;
}
Neben der klassischen for-Schleife gibt es noch Varianten, die wir später zum Thema Arrays und Objekten ansehen.
while
let isRunning = true;
while (isRunning) {
// Do something
}
do-while
let isRunning = true;
do {
// Do something
} while (isRunning);
try/catch error handling
try {
// Code mit potentieller Fehlerquelle
const pi = 3.14;
pi = 3; // Uncaught TypeError: Assignment to constant variable.
} catch (error) {
// Fehler selbst behandeln
console.error('Tut mir Leid, hier ist etwas nicht ganz Rund gelaufen!')
}
Es gibt auch eine Variante mit finally-Block, der auf jeden Fall nach try oder catch ausgeführt wird.
try {
// Code mit potentieller Fehlerquelle
} catch (error) {
// Fehler selbst behandeln
} finally {
// Code der in jedem Fall laufen muss:
// z.B. Datenbankverbindung trennen
}