Account creation on MDN is disabled while we upgrade our moderation mechanisms. If you see something that needs to be fixed, please file a bug: https://bugzilla.mozilla.org/form.doc and we'll handle it as soon as we can. Thanks for your patience!

if...else

Zusammenfassung

Die if-Anweisung führt Anweisungen aus, wenn eine bestimmte Bedingung aus wahr (true) ausgewertet werden kann. Wenn die Bedingung nicht wahr ist (false), kann eine andere Anweisung ausgeführt werden.

Syntax

if (bedingung)
   anweisung1
[else
   anweisung2]
bedingung
Eine Bedingung, die zu true oder false ausgewertet wird.
anweisung1
Eine Anweisung, die ausgeführt wird, wenn bedingung zu true ausgewertet wird. Diese Anweisung kann jede gültige Anweisung sein, auch eine if-Anweisung. Um mehrere Anweisungen auszuführen, muss eine block-Anweisung ({...}) genutzt werden, um die Anweisungen zu gruppieren. Wenn keine Anweisung ausgeführt werden soll, muss die empty-Anweisung genutzt werden.
anweisung2
Eine Anweisung, die ausgeführt wird, wenn bedingung zu false ausgewertet wird und die else -Klausel existiert. Auch hier können alle Anweisungen, egal ob block-Anweisung ({...}) oder weitere if-Anweisungen genutzt werden.

Beschreibung

Mehrere if...else-Anweisungen können verschachtelt werden, wenn eine else if-Klausel erstellt wird. Zu beachten ist, dass es in JavaScript kein Schlüsselwort elseif (in einem Wort) gibt.

if (bedingung1)
   anweisung1
else if (bedingung2)
   anweisung2
else if (bedingung3)
   anweisung3
...
else
   anweisungN

Um zu sehen wie das funktioniert, ist es hilfreich, die verschachtelten Anweisungen einzurücken:

if (bedingung1)
   anweisung1
else
   if (bedingung2)
      anweisung2
   else
      if (bedingung3)
...

Um mehrere Anweisungen in einer Klausel auszuführen, muss eine block-Anweisung genutzt werden. Allgemein ist es immer gut (best practice) eine block-Anweisung zu nutzen, besonders bei verschachtelten if-Anweisungen.

if (bedingung) {
   anweisung1
} else {
   anweisung2
}

Man sollte nicht den primitiven boolean-Datentyp mit dem Boolean-Objekt verwechseln. Jeder Wert, der nicht undefined, null, 0, NaN, oder der leere string ("") ist, wird zu true ausgewertet. Dabei ist auch ein Boolean-Objekt mit dem Wert false inbegriffen.

Zum Beispiel:

var b = new Boolean(false);
if (b) // wird zu true ausgewertet

Beispiele

Beispiel: if...else benutzen

if (cipher_char === from_char) {
   result = result + to_char;
   x++;
} else {
   result = result + clear_char;
}

Beispiel: else if benutzen

Zu beachten ist, dass in JavaScript kein elseif-Schlüsselwort existiert. Man kann jedoch immer ein Leerzeichen zwischen else und if benutzen.

if (x > 5) {

} else if (x > 50) {

} else {

}

Beispiel: Zuweisungen in der Bedingung

Es ist nicht ratsam einfache Zuweisungen in der Bedingung zu schreiben, weil diese zu Verwechselungen mit der Gleichheit führen kann. Zum Beispiel benutze den folgenden Quelltext nicht:

if (x = y) {
   /* tu das richtige */
}

Wenn es nötig ist, eine Zuweisung in einer Bedingungs-Anweisunge zu benutzen, dann setzt Klammern um die Zuweisung. Zum Beispiel:

if ((x = y)) {
   /* tu das richtige */
}

Spezifikationen

Spezifikation Status Kommentar
ECMAScript 1st Edition. Standard Initiale Definition.
ECMAScript 5.1 (ECMA-262)
Die Definition von 'if statement' in dieser Spezifikation.
Standard  
ECMAScript 6 (ECMA-262)
Die Definition von 'if statement' in dieser Spezifikation.
Anwärter Empfehlung  

Browserkompatibilität

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Ja) (Ja) (Ja) (Ja) (Ja)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Ja) (Ja) (Ja) (Ja) (Ja) (Ja)

Siehe auch

Schlagwörter des Dokuments und Mitwirkende

Schlagwörter: 
 Mitwirkende an dieser Seite: schlagi123
 Zuletzt aktualisiert von: schlagi123,