JavaScript/Operatoren/Vergleichsoperatoren

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Vergleichsoperatoren dienen zum Vergleichen zweier Werte. Solche Vergleiche werden vor allem für bedingte Anweisungen und Schleifen benutzt. Als Ergebnis liefern Vergleichsoperatoren immer einen sogenannten booleschen Wert (Wahrheitswert) vom Typ boolean, d.h. entweder true (wahr) oder false (falsch).

  • JavaScript 1.0
  • Chrome
  • Firefox
  • IE
  • Opera
  • Safari

Sie können z.B. den Inhalt einer Variablen mit dem Inhalt einer anderen oder mit dem Ergebnis eines Ausdrucks vergleichen, indem Sie den gewünschten Vergleichsoperator zwischen den beiden Operanden notieren:

Beispiel: für Vergleiche
var sinnDesLebens = 42, alter = 8;
if (sinnDesLebens == 42) alert("Richtig.");
if (sinnDesLebens != 42) alert("Falsch.");
if (sinnDesLebens > 42)  alert("Falsch.");
if (sinnDesLebens < 42)  alert("Falsch.");
if (alter >= 18)         alert("SIE duerfen das hier sehen.");
if (alter <= 17)         alert("SIE duerfen das hier NICHT sehen.");

Im Beispiel werden die Inhalte der Variablen sinnDesLebens und alter mit fixen numerischen Werten (42 etc.) verglichen. Informationen zur Funktionsweise einer If-Abfrage finden Sie im Abschnitt über bedingte Anweisungen.

Notieren Sie für Vergleichsoperatoren das Gleichheitszeichen, das Ausrufezeichen, das Größerzeichen oder das Kleinerzeichen bzw. Kombinationen davon wie folgt:

Operator Bedeutung Ergebnis der Operation
== istgleich true, wenn die Werte gleich sind, sonst false.
 != ungleich true, wenn die Werte ungleich sind, sonst false.
> größer true, wenn der linke Wert größer als der rechte ist, sonst false.
>= größergleich true, wenn der linke Wert größer oder gleich dem rechten ist, sonst false.
< kleiner true, wenn der linke Wert kleiner als der rechte ist , sonst false.
<= kleinergleich true, wenn der linke Wert kleiner oder gleich dem rechten ist, sonst false.
Beachten Sie: Anweisungen mit einfachem Gleichheitszeichen sind Wertzuweisungen, bei denen der auf der rechten Seite stehende Donator seinen Wert an den auf der linken Seite stehenden Akzeptor übergibt.

[Bearbeiten] Äpfel mit Birnen vergleichen

Die genannten Vergleichsoperatoren führen ggf. vor dem eigentlichen Vergleich unmerklich eine Typumwandlung durch. Das bedeutet, dass zwei Werte auch dann sinnvoll verglichen werden können, wenn es sich um unterschiedliche Datentypen handelt. Die Anweisung
alert(42 == "42");
gibt z.B. "true" aus, obwohl hier eine Zahl (Typ number) mit einer Zeichenkette (Typ string) verglichen wird.
Beachten Sie:  
  • Bei Vergleichen zweier Werte vom Datentyp object ergibt der istgleich-Operator == nur dann true, wenn beide Operanden auf genau dasselbe Objekt verweisen.
  • Bei Vergleichen mit dem Wert NaN (Not a Number) liefert der ungleich-Operator != immer true, alle anderen immer false. Sogar der Vergleich NaN == NaN ergibt false, d.h. NaN ist nicht mit sich selbst gleich. Folgender Ausdruck ergibt jedoch true, wenn die Variable x den Wert NaN enthält, sonst false:
    (isNaN(x) && typeof x == "number")

[Bearbeiten] Typgenaue Vergleiche

Um bei Vergleichen auf einfache Art auch den Datentyp berücksichtigen zu können, wurden mit der JavaScript-Version 1.2 zwei typgenaue Vergleichsoperatoren eingeführt:

  • JavaScript 1.2
Operator Bedeutung Ergebnis der Operation
=== istgleich true, wenn beide Werte gleich und außerdem gleichen Typs sind, sonst false.
 !== ungleich true, wenn die Werte ungleich oder nicht gleichen Typs sind, sonst false.
Meine Werkzeuge
Namensräume

Varianten
Aktionen
Übersicht
Index
Mitmachen
Werkzeuge
Spenden
SELFHTML