Porównanie JavaScript
- Poprzednia strona JS logika
- Następna strona JS warunki
Porównanie i operatory logiki są używane do testowania prawda
Lub fałsz
。
Operatory porównawcze
Operatory porównawcze są używane w wyrażeniach logicznych do określenia, czy zmienne lub wartości są równe.
Podając x = 5, poniższa tabela wyjaśnia operatory porównawcze:
Operator | Opis | Porównuje | Zwraca | Test |
---|---|---|---|---|
== | Równe | x == 8 | fałsz | Spróbuj sam |
x == 5 | prawda | Spróbuj sam | ||
x == "5" | prawda | Spróbuj sam | ||
=== | Równe wartości i różne typy | x === 5 | prawda | Spróbuj sam |
x === "5" | fałsz | Spróbuj sam | ||
!= | Różne | x != 8 | prawda | Spróbuj sam |
!== | Różne wartości lub różne typy | x !== 5 | fałsz | Spróbuj sam |
x !== "5" | prawda | Spróbuj sam | ||
x !== 8 | prawda | Spróbuj sam | ||
> | > | Więcej niż | fałsz | Spróbuj sam |
< | Mniej niż | x < 8 | prawda | Spróbuj sam |
>= | Więcej niż lub równo | x >= 8 | fałsz | Spróbuj sam |
<= | Mniej niż lub równo | x <= 8 | prawda | Spróbuj sam |
Jak używać
Porównawcze operatory można używać w instrukcjach warunkowych do porównania wartości i podjęcia działań na podstawie wyniku:
if (age < 18) text = "zbyt młoda";
W następujących rozdziałach tego kursu nauczysz się więcej o instrukcjach warunkowych.
Operatorzy logiki
Operatorzy logiki są używane do oceny logiki zmiennych lub wartości.
Podając x = 6 i y = 3, poniższa tabela wyjaśnia operatorzy logiki:
Operator | Opis | Przykład | Test |
---|---|---|---|
&& | I | (x < 10 && y > 1) jest prawdą | Spróbuj sam |
|| | Lub | (x == 5 || y == 5) jest fałszem | Spróbuj sam |
! | Negacja | !(x == y) jest prawdą | Spróbuj sam |
Operator warunkowy (trójwartościowy)
JavaScript zawiera również operator warunkowy, który pozwala przypisać wartość zmiennej na podstawie pewnych warunków.
Gramatyka
nazwa_zmiennej = (warunek) ? value1:value2
Przykład
var voteable = (age < 18) ? "zbyt młoda":"dostatecznie dojrzała";
Jeśli wartość zmiennej age jest mniejsza niż 18, wartość zmiennej voteable będzie "zbyt młoda", w przeciwnym razie wartość zmiennej voteable będzie "dostatecznie dojrzała".
Porównywanie różnych typów
Porównywanie różnych typów danych może prowadzić do nieprzewidzianych wyników.
Jeśli porównujemy ciąg znaków z liczbą, JavaScript konwertuje ciąg znaków na wartość numeryczną. Pusty ciąg znaków zostanie przekształcony na 0. Ciąg znaków, który nie jest liczbą, zostanie przekształcony na wartość zawsze równą fałsz
i NaN
。
Przypadek | Wartość | Test |
---|---|---|
2 < 12 | prawda | Spróbuj sam |
2 < "12" | prawda | Spróbuj sam |
2 < "Bill" | fałsz | Spróbuj sam |
2 > "Bill" | fałsz | Spróbuj sam |
2 == "Bill" | fałsz | Spróbuj sam |
"2" < "12" | fałsz | Spróbuj sam |
"2" > "12" | prawda | Spróbuj sam |
"2" == "12" | fałsz | Spróbuj sam |
Kiedy porównujemy dwa ciągi znaków, "2" jest większe niż "12", ponieważ (wg porządku alfabetycznego) 1 jest mniejsze niż 2.
Aby zapewnić poprawne wyniki, wartość zmiennej powinna być przekształcona na odpowiedni typ przed porównaniem:
age = Number(age); if (isNaN(age)) { voteable = "Błąd wejścia"; } voteable = (age < 18) ? "za młody" : "dostatecznie dorosły"; }
- Poprzednia strona JS logika
- Następna strona JS warunki