Zelo pogosto pri programiranju potrebujemo podatkovni tip, ki ima lahko samo dve vrednosti, in ti dve vrednosti
sta true (slo. Pravilno) in false (slo. Napačno). Zato ima JavaScript logični
podatkovni tip (Boolean). S funkcijo Boolean() lahko ugotovimo, ali je izraz (ali spremenljivka)
resničen ali ne. JavaScript izjave omogočajo primerjavo in preverjanje vrednosti z uporabo različnih operatorjev
(==, ===, >, <). Z njimi lahko preverjamo enakost vrednosti, primerjamo števila in izvajamo pogojne stavke
(if, else).
Rezultat vsake primerjave je logična vrednost true ali false. Običajno
so logične vrednosti JavaScript-a primitivne vrednosti, ustvarjene iz literalov. Logične vrednosti je mogoče
definirati tudi kot objekte s ključno besedo new, vendar se uporaba objektnih logičnih vrednosti
odsvetuje, saj lahko privede do nepričakovanih rezultatov pri primerjavi vrednosti.
| Stvar | Opis | Sintaksa | Primer |
|---|---|---|---|
| Logične vrednosti | |||
| true | Logično resnično | true |
let x = true; |
| false | Logično neresnično | false |
let x = false; |
| Boolean() | Pretvori vrednost v boolean | Boolean(vrednost) |
Boolean(0); // false |
| Falsy vrednosti (vrnejo false) | |||
| false, 0, -0, 0n | Številske ničle | Boolean(0) |
Boolean(0); // false |
| "" | Prazen niz | Boolean("") |
Boolean(""); // false |
| null, undefined, NaN | Prazne ali neveljavne vrednosti | Boolean(null) |
Boolean(null); // false |
| Truthy vrednosti (vrnejo true) | |||
| Karkoli drugega | Vse, kar ni falsy | Boolean(vrednost) |
Boolean("0"); // true |
| {}, [] | Prazni objekti in tabele | Boolean({}) |
Boolean([]); // true |
| Logični operatorji | |||
| && | IN (obe morata biti true) | a && b |
true && false; // false |
| || | ALI (vsaj ena mora biti true) | a || b |
true || false; // true |
| ! | NE (obrne vrednost) | !a |
!true; // false |
| !! | Dvojno NE (pretvori v boolean) | !!a |
!!"hello"; // true |
| Primerjalni operatorji (vrnejo boolean) | |||
| ===, !== | Strogo enako/neenako (tip + vrednost) | a === b |
5 === "5"; // false |
| ==, != | Enako/neenako (s pretvorbo tipa) | a == b |
5 == "5"; // true |
| > , < , >= , <= | Primerjava velikosti | a > b |
10 > 5; // true |
| Metode Boolean objekta | |||
| constructor | Vrne funkcijo, ki je ustvarila logični prototip. | obj.constructor |
▶ Primer kode |
| prototype | Omogoča dodajanje lastnosti in metod logičnemu prototipu. | Boolean.prototype |
▶ Primer kode |
| toString() | Pretvori logično vrednost v niz. | bool.toString() |
▶ Primer kode |
| valueOf() | Vrne osnovno primitivno vrednost. | bool.valueOf() |
▶ Primer kode |