3.1.3 Geschachtelte if-Anweisungen
Sie können if-Anweisungen auch ineinander verschachteln. In dem
folgenden Beispiel soll festgestellt werden, welches Ergebnis ein
Fußballspiel hatte – Bayern München gewinnt,
Hertha gewinnt oder Unentschieden. Zunächst werden Variablen
für die Anzahl der jeweils geschossenen Tore initialisiert.
Anschließend wird geprüft, ob sie übereinstimmen. Wenn
dies nicht der Fall ist, dann soll untersucht werden, welcher der
beiden Werte größer ist.
Dabei verwenden wir wieder die im vorigen Abschnitt vorgestellte
Funktion alert("Nachricht"), die eine Nachricht in einem eigenem
Fenster anzeigt, statt sie direkt ins Browserfenster zu schreiben.
if-Anweisung:
<script type="text/javascript">
var toreBayern = 3;
var toreHertha = 2;
if (toreHertha == toreBayern) {
alert("Unentschieden");
} else {
alert("Es gibt einen eindeutigen Sieger.");
if (toreHertha > toreBayern) {
alert("Hertha hat gewonnen.");
} else {
alert("Bayern hat gewonnen.");
}
}
</script>
Ansehen
Wie Sie sehen, steht hier die zweite if-Anweisung innerhalb der
geschweiften Klammern, die zum else der ersten if-Anweisung
gehören. Das bedeutet, die zweite if-Anweisung wird nur dann
betrachtet, wenn die erste Bedingung nicht erfüllt ist. Das ist
hier natürlich sinnvoll, schließlich muss man nur dann
einen Sieger bestimmen, wenn das Spiel nicht unentschieden ausgegangen
ist. Grundsätzlich können Sie also auch komplexere
Anweisungsblöcke innerhalb der Klammern von if oder else
schreiben, um sie von einer Bedingung abhängig zu machen.
Übung 3.2:
Um sich die Funktionsweise der Vergleichsoperatoren noch einmal vor
Augen zu führen, versuchen Sie, für toreHertha und toreBayern
verschiedene Werte einzusetzen.
