In der Datenbank befinden sich derzeit 477 Specials. Alle Specials anzeigen... |
Entweder - oder | |
Entweder - Oder
var zahl = random(0, 9); if (zahl > 4) print "Die Zufallszahl ist größer als 4!";
Der print-Befehl wird also nur ausgeführt, wenn die Bedingung
(zahl > 4) erfüllt ist. Die Bedingung steht nach dem Schlüsselwort
'if' in Klammern. Es ist üblich, den Code, der von einem if
abhängig ist, einzurücken. Das
könnt Ihr bereits im letzten Beispiel sehen: Die Zeile mit dem
print-Statement steht etwas weiter rechts als die anderen. Auch das dient
der Lesbarkeit des Codes.
if (fertig) // prüft, ob 'fertig' true oder false enthält ... // der &&-Operator ('und') liefert einen Wahrheitswert if (zahl > 5 && zahl < 10) ... // eine Funktion, die einen Wahrheitswert zurückliefert if (isJPEG(dateiname)) ... «Eigentlich» ist von einem if nur die direkt folgende Zeile abhängig if (zahl > 5) print "Zahl ist größer als 5!"; print "Diese Ausgabe kommt immer, auch wenn Zahl nicht größer 5 ist!"; Wenn Ihr mehr als eine Zeile von einem if abhängig machen wollt, müßt ihr den Code in einem Block zusammenfassen. Dann ist dieser Block vom if abhängig. Blöcke werden in Mengenklammern { } eingefaßt if (zahl < 5) { print "Zahl ist größer 5!"; print "Auch diese Ausgabe ist vom if abhängig!"; zahl *= 2; zahl = random(0, zahl); } print "Erst hier ist das if zu Ende!"; Oft braucht Ihr nicht nur das «wenn», sondern auch das «sonst». Dazu gibt es eine Erweiterung der if-Verzweigung um das Schlüsselwort else. Der von else abhängige Code wird genau dann ausgeführt, wenn die Bedingung des if nicht zutrifft if (zahl > 5) // wenn print "zahl ist größer 5!"; else // sonst print "zahl ist nicht größer 5!";
Genauso wie beim if-Teil kann von else eine einzelne Zeile oder ein Block
abhängig sein. if kann ohne else stehen, aber logischerweise nicht
umgekehrt.
if (zahl > 5) { print "zahl ist größer 5!"; if (zahl > 8) print "zahl ist auch größer 8!"; } In vielen Sprachen gibt es noch eine weitere Möglichkeit, die Ausführung von Code an eine Bedingung zu knüpfen. Dazu wird das Schlüsselwort switch benutzt switch (zahl) { case 0: print "Der Wert ist 0!"; case 1: print "Der Wert ist 1!"; case 5: print "Der Wert ist 5!"; default: print "Der Wert ist weder 0, noch 1, noch 5!"; }
In diesem Beispiel richtet es sich nach dem Wert der Variablen 'zahl',
welche Zeile des Codes als nächstes ausgeführt wird. Dazu dienen
die Sprungmarken, die mit dem Schlüsselwort
'case' gesetzt werden. Hat also 'zahl' den Wert 0, wird hinter 'case 0:'
weitergemacht, ist der Wert 1, hinter 'case 1:', etc. In vielen Sprachen
könnt Ihr auch das Schlüsselwort 'default' als Sprungmarke
verwenden. Die wird angesprungen, wenn keine der anderen Sprungmarken
zutrifft.
Der Wert ist 1! Der Wert ist 5! Der Wert ist weder 0, noch 1, noch 5! Das ist natürlich nicht im Sinne des Erfinders. Um dieses Verhalten zu vermeiden, müßt Ihr vor jeder neuen Sprungmarke die switch-Verzweigung verlassen. Das geschieht mit dem Schlüsselwort 'break'. Die Ausführung wird direkt hinter dem switch-Konstrukt fortgesetzt switch (zahl) { case 0: print "Der Wert ist 0!"; break; case 1: print "Der Wert ist 1!"; break; case 5: print "Der Wert ist 5!"; break; default: print "Der Wert ist weder 0, noch 1, noch 5!"; break; } print "Hier geht es nach einem break weiter!"; break verläßt das jeweils aktuelle Konstrukt, in diesem Fall das switch-Konstrukt. Ihr könnt auch andere Konstrukte damit unterbrechen if (name != "") // wenn ein Dateiname eingegeben wurde { // wenn der Dateiname nicht auf '.jpg' endet if (!endsWith(name, ".jpg")) break; // nicht weitermachen var pic = loadImage(name); // diese Datei von der Festplatte laden ... } Ein weiteres Einsatzgebiet von break sind das nächste Thema, Schleifen. |
Special vom: | 16.01.2003 |
Autor dieses Specials: | Henning Kockerbeck |
Die weiteren Unterseiten dieses Specials: | |
Die reine Lehre - HTML | |
Stilvoll - CSS | |
Kleiner Grundkurs Programmieren | |
Jetzt wird's dynamisch - JavaScript | |
Die andere Seite der Dynamik - PHP | |
Neue Gefilde - XML | |
Weiterführende Links | |
Zurück zur Hauptseite des Specials |