Bedingte Anweisungen und Schleifen in JavaScript
Classified in Informatik
Written at on Deutsch with a size of 9,15 KB.
Einfache bedingte Anweisungen
Nicht alle Probleme können mit sequentiellen Strukturen gelöst werden. Wenn eine Entscheidung getroffen werden muss, kommen bedingte Strukturen ins Spiel. In unserem täglichen Leben stehen wir vor Situationen, in denen wir Entscheidungen treffen müssen:
- Soll ich Studiengang A oder B wählen?
- Soll ich diese Hose tragen?
- Soll ich auf Seite A oder Seite B gehen?
- Um zur Arbeit zu gehen, wähle ich Weg A oder Weg B?
- Wenn ich eine Schicht wähle, nehme ich dann die Früh-, Nachmittags- oder Abendschicht?
Natürlich können Probleme sequentielle und bedingte Strukturen kombinieren. Bei einer einfachen bedingten Anweisung gibt es Aktivitäten, die ausgeführt werden, wenn die Bedingung wahr ist, und keine Aktivitäten, wenn die Bedingung falsch ist. Auf dem Weg zum Wahren kann es mehrere Operationen, Ein- und Ausgaben geben, und es können auch andere bedingte Strukturen vorhanden sein.
In der JavaScript-Sprache wird die if
-Anweisung verwendet. Die Bedingung muss in Klammern eingeschlossen werden. Wenn die Bedingung erfüllt ist, werden alle Anweisungen ausgeführt, die zwischen den öffnenden und schließenden geschweiften Klammern stehen, die auf das if
folgen. Um Bedingungen in einem if
zu formulieren, können wir die folgenden Vergleichsoperatoren verwenden:
>
größer als>=
größer oder gleich<
kleiner als<=
kleiner oder gleich!=
ungleich==
gleich
Wir müssen immer bedenken, dass in der Bedingung eine Variable, ein relationaler Operator und eine Variable oder ein fester Wert vorkommen müssen. Eine weitere Sache, die wir beachten müssen, ist der Operator +
für Strings:
document.write(name + " ist mit einer " + note + " bestanden");
Damit können wir unsere Programme viel kürzer schreiben, anstatt:
document.write(name);
document.write(' ist mit einer ');
document.write(note);
Zusammengesetzte bedingte Strukturen
Wenn wir die Wahl haben, können wir eine Aktion oder eine andere ausführen. Das heißt, wir haben Aktivitäten sowohl für den wahren als auch für den falschen Zustand. Das Wichtigste ist, dass bei der Ausführung einer Aktivität im Zweig des Wahren oder Falschen niemals die Aktivitäten beider Zweige ausgeführt werden.
In einer bedingten Struktur können Ein- und Ausgaben sowie Operationen sowohl im wahren als auch im falschen Zweig vorkommen. Die Funktion prompt
liefert einen String, daher müssen wir ihn in einen numerischen Wert umwandeln, wenn wir wissen wollen, welcher der beiden Werte größer ist. In JavaScript kann eine Variable den Datentyp, den sie speichert, während der Ausführung des Programms ändern. Wir werden sehen, was passiert, wenn wir fragen, welcher von zwei Strings größer ist.
Wir stehen vor einer zusammengesetzten bedingten Struktur, weil wir Aktivitäten sowohl für den wahren als auch für den falschen Zweig haben. Die bedingte Struktur besteht aus folgendem Code:
if (<Bedingung>) {
<Anweisung(en)>
} else {
<Anweisung(en)>
}
Dies ist die gleiche wie die einfache bedingte Struktur, nur dass das Schlüsselwort else
und dann ein Block mit einer oder mehreren Anweisungen in Klammern erscheint. Wenn die Bedingung erfüllt ist, wird der Block nach der Bedingung ausgeführt. Wenn die Bedingung falsch ist, wird die Anweisung oder der Block von Anweisungen ausgeführt, die nach dem else
angegeben sind.
Verschachtelte bedingte Strukturen
Eine verschachtelte bedingte Struktur liegt vor, wenn der Zweig des Wahren oder Falschen einer bedingten Struktur eine weitere bedingte Struktur enthält. Beispiel: Wir wollen ein Programm erstellen, das die Noten eines Studenten abfragt, den Durchschnitt berechnet und eine der folgenden Nachrichten ausgibt:
- Wenn der Durchschnitt größer oder gleich 7 ist, zeige "Befördert".
- Wenn der Durchschnitt größer oder gleich 4 und kleiner als 7 ist, zeige "Regulär".
- Wenn der Durchschnitt kleiner als 4 ist, zeige "Nicht bestanden".
Kommentare in JavaScript werden mit zwei Schrägstrichen am Anfang des Kommentars eingefügt:
// String in Integer umwandeln
Wenn wir mehrere Kommentarzeilen haben, gibt es eine Alternative:
/* Kommentarzeile 1.
Kommentarzeile 2. */
Das heißt, wir schließen den Block mit den Zeichen /*
und */
ein.
Logische Operatoren && (UND) in bedingten Strukturen
Der Operator &&
wird als "und" übersetzt. Er wird in einer bedingten Struktur verwendet, wenn zwei Bedingungen verknüpft werden müssen. Wenn wir zwei oder mehr Bedingungen mit dem Operator &&
verknüpfen, müssen beide Bedingungen wahr sein, damit das Ergebnis der zusammengesetzten Bedingung wahr ist und der wahre Zweig der bedingten Struktur ausgeführt wird. Denken Sie daran, dass die auszufüllende Bedingung in Klammern stehen muss. Die Verwendung von logischen Operatoren kann in vielen Fällen Algorithmen kürzer und verständlicher machen.
Logische Operatoren || (ODER) in bedingten Strukturen
Der Operator ||
wird als "oder" übersetzt. Wenn Bedingung 1 wahr ist oder Bedingung 2 wahr ist, dann führe den Zweig des Wahren aus. Wenn wir zwei oder mehr Bedingungen mit dem Operator "oder" verknüpfen, reicht es aus, dass eine der beiden Bedingungen wahr ist, damit das Ergebnis der zusammengesetzten Bedingung wahr ist.
Switch-Anweisungen
Die switch
-Anweisung ist eine Alternative zu if/else if
-Anweisungen. Sie kann in bestimmten Situationen angewendet werden, in denen die Bedingung prüft, ob sie gleich einem bestimmten Wert ist. Wir können nicht nach größer oder kleiner fragen. Wir sollten beachten, dass die zu analysierende Variable nach der switch
-Anweisung in Klammern stehen sollte. Jeder Wert sollte nach dem Schlüsselwort "case" und einem Doppelpunkt stehen. Die Anweisungen werden ausgeführt, wenn der Wert der Variablen, die der Switch analysiert, übereinstimmt. Es ist wichtig, das Schlüsselwort "break" am Ende eines jeden Falles zu haben. Die Anweisungen nach dem Schlüsselwort "default" werden ausgeführt, wenn die Variable in keinem Fall übereinstimmt. "default" ist in dieser Anweisung optional.
Wenn Anführungszeichen verwendet werden, muss der zu analysierende Wert eingeschränkt werden:
case "red":
document.bgColor = "#ff0000";
break;
Um die Hintergrundfarbe des Fensters zu ändern, weisen wir der Eigenschaft bgColor
des document
-Objekts die Farbe zu (die Farbe wird durch drei Hexadezimalwerte gebildet, die die Menge an Rot, Grün und Blau darstellen). In diesem Fall weisen wir den Wert FF (255 dezimal) für Rot zu, d. h. den maximal möglichen Wert, dann 00 für Grün und Blau (wir können jede Charting-Software verwenden, um die drei Werte zu generieren).
Wiederholungsstruktur (while)
Bisher haben wir sequentielle und bedingte Strukturen verwendet. Eine andere Art von Strukturen, die ebenso wichtig sind wie die vorherigen, sind Wiederholungsstrukturen. Eine Wiederholungsstruktur ermöglicht es, eine Anweisung oder eine Reihe von Anweisungen mehrfach auszuführen. Eine sich wiederholende Ausführung von Anweisungen ist gekennzeichnet durch:
- Die Anweisungen, die wiederholt werden.
- Den Test oder die Prüfung der Bedingung vor jeder Iteration, die eine Wiederholung der Anweisungen bewirkt oder nicht.
Funktionsweise von while
: Zuerst prüfen wir die Bedingung. Wenn sie wahr ist, werden die Anweisungen ausgeführt, die zwischen den geschweiften Klammern stehen, die auf das while
folgen. Wenn die Bedingung falsch ist, wird mit der folgenden Anweisung nach dem Block der geschweiften Klammern fortgefahren. Der Block wird wiederholt, solange die Bedingung wahr ist.
Wichtig: Wenn die Bedingung immer wahr ist, befinden wir uns in einer Endlosschleife. Diese Situation ist ein Programmierfehler, da das Programm nie endet. Am schwierigsten ist die Definition der Bedingung der while
-Struktur und des Blocks von Anweisungen, die wiederholt werden sollen. Beachten Sie, dass z. B. die Bedingung x >= 100
(wenn x größer oder gleich 100 ist) keinen Syntaxfehler verursacht, aber wir befinden uns in einem logischen Fehler, da beim ersten Mal die Bedingung falsch zurückgibt und den Block von Anweisungen nicht 100 Mal ausführt.
Es gibt kein Rezept für die Definition einer Bedingung für eine Wiederholungsstruktur, aber mit kontinuierlicher Übung wird es einfacher, Probleme zu lösen.