JavaScript sammenligning
- Forrige side JS-logik
- Næste side JS-betingelser
Sammenlignings- og logiske operatorer bruges til at teste true
eller false
。
Sammenligningsoperatorer
Sammenligningsoperatorer bruges i logiske udsagn til at afgøre, om variabler eller værdier er ens.
Vi giver x = 5, og tabellen nedenfor forklarer sammenligningsoperatorerne:
Operator | Beskrivelse | Sammenligning | Returnerer | Test |
---|---|---|---|---|
== | Lig med | x == 8 | false | Prøv det selv |
x == 5 | true | Prøv det selv | ||
x == "5" | true | Prøv det selv | ||
=== | Værdierne er ens og typerne er ens | x === 5 | true | Prøv det selv |
x === "5" | false | Prøv det selv | ||
!= | Ulige | x != 8 | true | Prøv det selv |
!== | Værdierne er forskellige eller typerne er forskellige | x !== 5 | false | Prøv det selv |
x !== "5" | true | Prøv det selv | ||
x !== 8 | true | Prøv det selv | ||
> | > | Større end | false | Prøv det selv |
< | Mindre end | x < 8 | true | Prøv det selv |
>= | Større end eller lig med | x >= 8 | false | Prøv det selv |
<= | Mindre end eller lig med | x <= 8 | true | Prøv det selv |
Hvordan man bruger
Sammenligningsoperatorer kan bruges i betingelsesudtryk til at sammenligne værdier og træffe handlinger baseret på resultatet:
if (age < 18) text = "for ung";
I de næste kapitler af denne vejledning vil du lære mere om betingelsesudtryk.
Logiske operatorer
Logiske operatorer bruges til at afgøre logiske forhold mellem variabler eller værdier.
Vi giver x = 6 og y = 3, og tabellen nedenfor forklarer logiske operatorer:
Operator | Beskrivelse | Eksempel | Test |
---|---|---|---|
&& | og | (x < 10 && y > 1) er sand | Prøv det selv |
|| | eller | (x == 5 || y == 5) er falsk | Prøv det selv |
! | Negation | !(x == y) er sand | Prøv det selv |
Betingelsesoperator (tredjestrengsoperator)
JavaScript inkluderer også betingelsesoperatorer, der kan bruges til at tildele værdier til variabler baseret på visse betingelser.
Syntaks
variabelnavn = (betingelse) ? value1:value2
Eksempel
var voteable = (age < 18) ? "for ung" : "tilstrækkeligt moden";
Hvis variabelen age's værdi er mindre end 18, vil variabelens værdi være "for ung"; ellers vil værdien være "tilstrækkeligt moden".
Sammenligning af forskellige typer
Sammenligning af data af forskellige typer kan føre til uventede resultater.
Hvis en streng sammenlignes med et tal, konverterer JavaScript strengen til et tal ved sammenligning. En tom streng konverteres til 0. En ikke-numerisk streng konverteres til altid false
s NaN
。
Case | Værdi | Test |
---|---|---|
2 < 12 | true | Prøv det selv |
2 < "12" | true | Prøv det selv |
2 < "Bill" | false | Prøv det selv |
2 > "Bill" | false | Prøv det selv |
2 == "Bill" | false | Prøv det selv |
"2" < "12" | false | Prøv det selv |
"2" > "12" | true | Prøv det selv |
"2" == "12" | false | Prøv det selv |
Når to strenge sammenlignes, er "2" større end "12", fordi (efter alfabetisk sortering) 1 er mindre end 2.
For at sikre korrekte resultater skal variablen konverteres til en passende type før sammenligning:
age = Number(age); if (isNaN(age)) { voteable = "Indtastningsfejl"; } voteable = (age < 18) ? "For ung" : "Nogenlunde moden"; }
- Forrige side JS-logik
- Næste side JS-betingelser