JavaScript Vergleich
Vergleichsoperatoren
Vergleichsoperatoren werden verwendet, um zwei Werte zu vergleichen.
Vergleichsoperatoren geben immer zurück true oder false.
Unter der Annahme, dass x = 5, werden in der folgenden Tabelle die Vergleichsoperatoren erläutert:
| Operator | Beschreibung | Vergleichen | Renditen | |
|---|---|---|---|---|
| == | gleich | x == 8 | false | Try it » |
| x == 5 | true | Try it » | ||
| x == "5" | true | Try it » | ||
| === | gleicher Wert und gleicher Typ | x === 5 | true | Try it » |
| x === "5" | false | Try it » | ||
| != | ungleich | x != 8 | true | Try it » |
| !== | ungleicher Wert oder ungleicher Typ | x !== 5 | false | Try it » |
| x !== "5" | true | Try it » | ||
| x !== 8 | true | Try it » | ||
| > | größer als | x > 8 | false | Try it » |
| < | weniger als | x < 8 | true | Try it » |
| >= | größer oder gleich | x >= 8 | false | Try it » |
| <= | kleiner oder gleich | x <= 8 | true | Try it » |
Vergleichsoperatoren können in bedingten Anweisungen verwendet werden, um Werte zu vergleichen und je nach Ergebnis Maßnahmen zu ergreifen:
if (age < 18) text = "Too young to buy alcohol";
Mehr zur Verwendung von bedingten Anweisungen erfahren Sie im Kapitel if...else dieses Tutorials.
JavaScript Stringvergleich
Alle oben genannten Vergleichsoperatoren können auch auf Zeichenfolgen angewendet werden:
Beachten Sie, dass Zeichenfolgen alphabetisch verglichen werden:
Vergleich verschiedener Typen
Der Vergleich von Daten unterschiedlichen Typs kann zu unerwarteten Ergebnissen führen.
Beim Vergleichen einer Zeichenfolge mit einer Zahl konvertiert JavaScript die Zeichenfolge beim Vergleich in eine Zahl. Eine leere Zeichenfolge wird in 0 konvertiert. Eine nicht numerische Zeichenfolge wird in NaN konvertiert, was immer false.
| Fall | Wert | Try |
|---|---|---|
| 2 < 12 | true | Try it » |
| 2 < "12" | true | Try it » |
| 2 < "John" | false | Try it » |
| 2 > "John" | false | Try it » |
| 2 == "John" | false | Try it » |
| "2" < "12" | false | Try it » |
| "2" > "12" | true | Try it » |
| "2" == "12" | false | Try it » |
Beim Vergleich zweier Zeichenfolgen ist "2" größer als "12".
Alphabetisch ist 1 kleiner als 21.
Um ein korrektes Ergebnis zu gewährleisten, sollten Variablen vor dem Vergleich in den richtigen Typ konvertiert werden:
Beispiel
age = Number(age);
if (isNaN(age)) {
voteable = "Input is not a number";
} else {
voteable = (age < 18) ? "Too young" : "Old enough";
}
Try it Yourself »
