Úloha 1 – Logické operátory &&, || a ! – kontrola přístupu
Úvod do úlohy
Logické operátory patří k úplným základům programování, protože umožňují rozhodovat se podle více podmínek současně. Když chceme ověřit, zda je uživatel přihlášen a zároveň má správná oprávnění, nebo zda je číslo menší než 10 nebo větší než 100, bez logických operátorů bychom podobné situace jen těžko popsali. Jejich zvládnutí je proto klíčové pro tvorbu složitějších podmínek, které v reálných aplikacích potkáváme neustále – od validace formulářů po řízení herní logiky.
Teorie a principy
V JavaScriptu máme tři základní logické operátory:
-
&&(AND) – výsledkem jetrue, pokud oba výrazy jsou pravdivé. -
||(OR) – výsledkem jetrue, pokud alespoň jeden výraz je pravdivý. -
!(NOT) – výsledkem je opak hodnoty (ztruese stanefalsea naopak).
Každá logická operace vždy vrací hodnotu true nebo false. Díky tomu lze tyto operátory řetězit a vytvářet složené podmínky, které přesně popisují, co chceme ověřit.
Je dobré si uvědomit, že v JavaScriptu se do logických výrazů mohou zapojit i jiné hodnoty než jen true a false. Například číslo 0, prázdný řetězec "" nebo null se vyhodnotí jako falešné (tzv. falsy hodnoty), zatímco většina ostatních hodnot se bere jako pravdivé (truthy).
Praktické příklady kódu
1. Použití && (AND)
2. Použití || (OR)
3. Použití ! (NOT)
Typické chyby / záludnosti
-
Záměna
&&a||– studenti často mechanicky používají jeden operátor bez uvědomění si rozdílu (např. testují dvě podmínky pomocí OR, i když má být AND). -
Zapomínání na závorky – složitější výrazy je lepší jasně strukturovat závorkami, aby byla čitelnost jednoznačná.
-
Truthy a falsy hodnoty – někdy se studenti diví, proč
if ("0")vyhodnotí jako pravda (řetězec"0"je totiž truthy, i když číslo0je falsy). -
Negace
!dvakrát po sobě –!!hodnotase používá jako rychlý způsob převodu libovolné hodnoty na čistý boolean, ale začátečníci se často v zápisu ztrácí.
Shrnutí
-
Základní logické operátory jsou
&&,||a!. -
Vrací vždy hodnotu
truenebofalse. -
Slouží k tvorbě složených podmínek v kódu.
-
Pozor na truthy/falsy hodnoty a nutnost závorek ve složitějších výrazech.
Díky nim dokážeme modelovat složité logické situace, a proto je dobré je procvičit v různých kombinacích.