⊗jsPmCdCWB 119 of 505 menu

Porovnávanie hodnôt s booleovským typom v JavaScripte

V predchádzajúcom príklade sme na porovnanie použili operátor ===. V tomto prípade sa naša premenná porovnávala na rovnosť s true ako podľa hodnoty, tak aj podľa typu.

Pre takéto porovnanie sa dá použiť aj operátor ==. Ak bude v premennej test vždy jedna z hodnôt true alebo false, tak nič sa nezmení:

let test = true; // tu píšeme buď true, alebo false if (test == true) { console.log('+++'); } else { console.log('---'); }

No ak do premennej test môžu prísť ľubovoľné hodnoty, všetko sa stáva oveľa zložitejšie.

V takom prípade, ak bude v premennej test nebooleovská hodnota, tak sa táto hodnota najprv prevedie na booleovský typ a až potom sa bude porovnávať.

Nech napríklad v premennej test bude číslo 1. V tomto prípade sa najprv prevedie na logický typ, teda na true. A potom sa vykoná porovnanie:

let test = 1; if (test == true) { console.log('+++'); // spustí sa toto } else { console.log('---'); }

No napríklad číslo 0 sa prevedie na false. A naša podmienka v dôsledku vypíše 'neplatné':

let test = 0; if (test == true) { console.log('+++'); } else { console.log('---'); // spustí sa toto }

Takéto porovnanie sa v podstate dá explicitne prepísať do nasledujúceho tvaru:

let test = 1; if (Boolean(test) == true) { console.log('+++'); } else { console.log('---'); }

Spomeňte si a napíšte, ktoré hodnoty pri prevedení na booleovský typ dávajú false.

Bez spustenia kódu určite, čo sa vypíše do konzoly:

let test = 1; if (test == true) { console.log('+++'); } else { console.log('---'); }

Bez spustenia kódu určite, čo sa vypíše do konzoly:

let test = 0; if (test == true) { console.log('+++'); } else { console.log('---'); }

Bez spustenia kódu určite, čo sa vypíše do konzoly:

let test = 1; if (test == false) { console.log('+++'); } else { console.log('---'); }

Bez spustenia kódu určite, čo sa vypíše do konzoly:

let test = 1; if (test != true) { console.log('+++'); } else { console.log('---'); }

Bez spustenia kódu určite, čo sa vypíše do konzoly:

let test = ''; if (test == false) { console.log('+++'); } else { console.log('---'); }

Bez spustenia kódu určite, čo sa vypíše do konzoly:

let test; if (test == true) { console.log('+++'); } else { console.log('---'); }

Bez spustenia kódu určite, čo sa vypíše do konzoly:

let test = 3 * 'a'; if (test == true) { console.log('+++'); } else { console.log('---'); }
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť