JavaScriptin vertailu

Vertailu- ja loogiset operaattorit käytetään testaukseen true Tai false.

Vertailuoperaattorit

Vertailuoperaattorit käytetään loogisissa lauseissa arvojen tai muuttujien vertailuun.

Antaessaan x = 5, seuraavassa taulukossa selitetään vertailuoperaattorit:

Operaattori Kuvaus Vertailla Palauttaa Testi
== Yhtä suuri kuin x == 8 false Kokeile itse
x == 5 true Kokeile itse
x == "5" true Kokeile itse
=== Arvot ovat yhtä suuria ja tyypit ovat yhtä suuria x === 5 true Kokeile itse
x === "5" false Kokeile itse
!= Ei yhtä suuri x != 8 true Kokeile itse
!== Arvot eivät ole yhtä suuria tai tyypit eivät ole yhtä suuria x !== 5 false Kokeile itse
x !== "5" true Kokeile itse
x !== 8 true Kokeile itse
> Suurempi kuin x > 8 false Kokeile itse
< Vähemmän kuin x < 8 true Kokeile itse
>= Vähintään yhtä suuri kuin x >= 8 false Kokeile itse
<= Vähintään yhtä suuri kuin x <= 8 true Kokeile itse

Kuinka käyttää

Vertailuoperaattorit voidaan käyttää ehdollisissa lauseissa arvojen vertailuun ja toiminnan suorittamiseen sen perusteella:

if (age < 18) text = "liian nuori";

Tämän oppaan seuraavissa luvuissa opit lisää ehdollisista lauseista.

Loogiset operaattorit

Loogiset operaattorit käytetään arvojen tai muuttujien loogiseen arviointiin.

Antaessaan x = 6 ja y = 3, seuraavassa taulukossa selitetään loogiset operaattorit:

Operaattori Kuvaus Esimerkki Testi
&& Ja (x < 10 && y > 1) on totta Kokeile itse
|| Tai (x == 5 || y == 5) on epätotta Kokeile itse
! Ei !(x == y) on totta Kokeile itse

Ehdollinen (kolminainen) operaattori

JavaScript sisältää myös ehdollisia operaattoreita, jotka voivat asettaa muuttujille arvoja tietyin ehdoin.

Syntaksi

variablename = (condition) ? value1:value2

Esimerkki

var voteable = (age < 18) ? "liian nuori":"tarpeeksi kypsä";

Kokeile itse

Jos muuttujan age arvo on alle 18, muuttujan voteable arvo on "liian nuori", muuten muuttujan voteable arvo on "tarpeeksi kypsä".

Vertaa eri tyyppisiä tietoja

Eri tyyppisten tietojen vertailu voi johtaa odottamattomiin tuloksiin.

Jos vertaillaan merkkijonoa ja numeroa, JavaScript muuntaa merkkijonon arvoksi. Tyhjä merkkijono muunnetaan arvoksi 0. Ei-numeroinen merkkijono muunnetaan aina arvoksi false on NaN.

Tapausta Arvo Testi
2 < 12 true Kokeile itse
2 < "12" true Kokeile itse
2 < "Bill" false Kokeile itse
2 > "Bill" false Kokeile itse
2 == "Bill" false Kokeile itse
"2" < "12" false Kokeile itse
"2" > "12" true Kokeile itse
"2" == "12" false Kokeile itse

Kun verrataan kahta merkkijonoa, "2" on suurempi kuin "12", koska (kirjainjärjestyksessä) 1 on pienempi kuin 2.

Varmista oikean tuloksen saaminen muuntamalla muuttuja sopivaan tyyppiin ennen vertailua:

age = Number(age);
if (isNaN(age)) {
    voteable = "Syötevirhe";
}
    voteable = (age < 18) ? "Liian nuori" : "Riittävästi kypsä";
} 

Kokeile itse