I denna handledning lär du dig om jämförelseoperatörer och logiska operatörer med hjälp av exempel.
Jämförelse av JavaScript-operatörer
Jämförelseoperatörer jämför två värden och ger tillbaka ett booleskt värde: antingen true
eller false
. Jämförelseoperatörer används i beslutsfattande och slingor.
Operatör | Beskrivning | Exempel |
---|---|---|
== | Lika med : true om operanderna är lika | 5==5; //true |
!= | Inte lika med : true om operanderna inte är lika | 5!=5; //false |
=== | Strikt lika med : true om operanderna är lika och av samma typ | 5==='5'; //false |
!== | Strikt inte lika med : true om operanderna är lika men av olika typ eller inte alls lika | 5!=='5'; //true |
> | Större än : true om den vänstra operanden är större än den högra operanden | 3>2; //true |
>= | Större än eller lika med : true om vänster operand är större än eller lika med höger operand | 3>=3; //true |
< | Mindre än : true om den vänstra operanden är mindre än den högra operanden | 3<2; //false |
<= | Mindre än eller lika med : true om den vänstra operanden är mindre än eller lika med den högra operanden | 2<=2; //true |
Exempel 1: Lika 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
==
utvärderar till true
om operanderna är lika.
Obs! I JavaScript ==
är en jämförelseoperatör, medan =
en tilldelningsoperatör. Om du av misstag använder =
istället för ==
kan du få ett oönskat resultat.
Exempel 2: Inte lika med operatören
const a = 3, b = 'hello'; // not equal operator console.log(a != 2); // true console.log(b != 'Hello'); // true
!=
utvärderar till true
om operanderna inte är lika.
Exempel 3: Strikt lika med operatören
const a = 2; // strict equal operator console.log(a === 2); // true console.log(a === '2'); // false
===
utvärderar till true
om operanderna är lika och av samma typ. Här är 2 och '2' samma nummer men datatypen är annorlunda. Och ===
kontrollerar även datatypen medan du jämför.
Obs : Skillnaden mellan ==
och ===
är att:
==
utvärderar till true
om operanderna är lika, men ===
utvärderar true
endast om operanderna är lika och av samma typ
Exempel 4: Strikt inte lika 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
!==
utvärderar till true
om operanderna strängt inte är lika. Det är den fullständiga motsatsen till strikt lika ===
.
I exemplet ovan 2 != '2'
ger true
. Det beror på att deras typer är olika trots att de har samma värde.
Exempel 5: Större än operatör
const a = 3; // greater than operator console.log(a> 2); // true
>
utvärderar till true
om den vänstra operanden är större än den högra operanden.
Exempel 6: Större än eller lika med operatören
const a = 3; // greater than or equal operator console.log(a>= 3); //true
>=
utvärderar true
om den vänstra operanden är större än eller lika med den högra operanden.
Exempel 7: Mindre än operatör
const a = 3, b = 2; // less than operator console.log(a < 2); // false console.log(b < 3); // true
<
utvärderar till true
om den vänstra operanden är mindre än den högra operanden.
Exempel 8: Mindre än eller lika med operatören
const a = 2; // less than or equal operator console.log(a <= 3) // true console.log(a <= 2); // true
<=
utvärderar true
om den vänstra operanden är mindre än eller lika med den högra operanden.
JavaScript-logiska operatörer
Logiska operatörer utför logiska operationer: AND , OR och NOT .
Operatör | Beskrivning | Exempel |
---|---|---|
&& | Logiskt OCH : true om båda operanderna / booleska värdena är sanna, utvärderas annars tillfalse | true && false; // false |
|| | Logisk ELLER : true om någon av operanderna / booleska värdena är true . utvärderar till false om båda ärfalse | true || false; // true |
! | Logiskt INTE : true om operanden är false och tvärtom. | !true; // false |
Exempel 9: Logisk OCH 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
&&
utvärderar till true
om båda operanderna är true
, annars utvärderas till false
.
Obs! Du kan också använda logiska operatorer med nummer. I JavaScript är 0 false
och alla värden som inte är noll true
.
Exempel 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
||
utvärderar true
om någon av operanderna är true
. Om båda operanderna är false
är resultatet false
.
Exempel 11: Logisk INTE operatör
const a = true, b = false; // logical NOT console.log(!a); // false console.log(!b); // true
!
utvärderar till true
om operanden är false
och tvärtom.