I denne vejledning lærer du om sammenligningsoperatører og logiske operatører ved hjælp af eksempler.
JavaScript-sammenligningsoperatører
Sammenligningsoperatører sammenligner to værdier og giver en boolsk værdi tilbage: enten true
eller false
. Sammenligningsoperatører bruges til beslutningstagning og sløjfer.
Operatør | Beskrivelse | Eksempel |
---|---|---|
== | Lige med : true hvis operanderne er ens | 5==5; //true |
!= | Ikke lig med : true hvis operanderne ikke er ens | 5!=5; //false |
=== | Streng lig med : true hvis operanderne er ens og af samme type | 5==='5'; //false |
!== | Streng ikke lig med : true hvis operanderne er ens, men af forskellig type eller slet ikke ens | 5!=='5'; //true |
> | Større end : true hvis den venstre operand er større end den højre operand | 3>2; //true |
>= | Større end eller lig med : true hvis den venstre operand er større end eller lig med den højre operand | 3>=3; //true |
< | Mindre end : true hvis den venstre operand er mindre end den højre operand | 3<2; //false |
<= | Mindre end eller lig med : true hvis den venstre operand er mindre end eller lig med den højre operand | 2<=2; //true |
Eksempel 1: Lige med operatøren
const a = 5, b = 2, c = 'hello'; // equal to operator console.log(a == 5); // true console.log(b == '2'); // true console.log(c == 'Hello'); // false
==
evaluerer, true
om operanderne er ens.
Bemærk : I JavaScript ==
er en sammenligningsoperator, hvorimod =
en tildelingsoperator. Hvis du fejlagtigt bruger i =
stedet for ==
, kan du få et uønsket resultat.
Eksempel 2: Ikke lig med operatøren
const a = 3, b = 'hello'; // not equal operator console.log(a != 2); // true console.log(b != 'Hello'); // true
!=
evaluerer til, true
om operanderne ikke er ens.
Eksempel 3: Strengt lig med operatøren
const a = 2; // strict equal operator console.log(a === 2); // true console.log(a === '2'); // false
===
evaluerer, true
om operanderne er ens og af samme type. Her er 2 og '2' de samme tal, men datatypen er forskellig. Og ===
kontrollerer også for datatypen under sammenligning.
Bemærk : Forskellen mellem ==
og ===
er, at:
==
evaluerer til, true
om operanderne er ens, ===
evaluerer dog true
kun, hvis operanderne er ens og af samme type
Eksempel 4: Strik ikke lig med operatøren
const a = 2, b = 'hello'; // strict not equal operator console.log(a !== 2); // false console.log(a !== '2'); // true console.log(b !== 'Hello'); // true
!==
vurderer, true
om operanderne strengt taget ikke er ens. Det er det helt modsatte af strengt lige ===
.
I ovenstående eksempel 2 != '2'
giver true
. Det er fordi deres typer er forskellige, selvom de har den samme værdi.
Eksempel 5: Større end operatør
const a = 3; // greater than operator console.log(a> 2); // true
>
evaluerer til, true
om den venstre operand er større end den højre operand.
Eksempel 6: Større end eller lig med operatøren
const a = 3; // greater than or equal operator console.log(a>= 3); //true
>=
evaluerer, true
om den venstre operand er større end eller lig med den højre operand.
Eksempel 7: Mindre end operatør
const a = 3, b = 2; // less than operator console.log(a < 2); // false console.log(b < 3); // true
<
evaluerer til, true
om den venstre operand er mindre end den højre operand.
Eksempel 8: Mindre end eller lig med operatøren
const a = 2; // less than or equal operator console.log(a <= 3) // true console.log(a <= 2); // true
<=
evaluerer til, true
om den venstre operand er mindre end eller lig med den højre operand.
JavaScript-logiske operatører
Logiske operatører udfører logiske operationer: AND , OR og NOT .
Operatør | Beskrivelse | Eksempel |
---|---|---|
&& | Logisk OG : true hvis begge operander / boolske værdier er sande, evalueres ellers tilfalse | true && false; // false |
|| | Logisk ELLER : true hvis en af operander / boolske værdier er true . vurderer, false om begge erfalse | true || false; // true |
! | Logisk IKKE : true hvis operanden er false og omvendt. | !true; // false |
Eksempel 9: Logisk OG operatør
const a = true, b = false; const c = 4; // logical AND console.log(a && a); // true console.log(a && b); // false console.log((c> 2) && (c < 2)); // false
&&
evaluerer til, true
om begge operander er true
, ellers evalueres til false
.
Bemærk: Du kan også bruge logiske operatorer med tal. I JavaScript er 0, false
og alle værdier, der ikke er nul, er true
.
Eksempel 10: Logisk ELLER operatør
const a = true, b = false, c = 4; // logical OR console.log(a || b); // true console.log(b || b); // false console.log((c>2) || (c<2)); // true
||
evaluerer til, true
om en af operanderne er true
. Hvis begge operander er false
, er resultatet false
.
Eksempel 11: Logisk IKKE operatør
const a = true, b = false; // logical NOT console.log(!a); // false console.log(!b); // true
!
evaluerer til, true
om operanden er false
og omvendt.