Javascript krátky zápis if. Podmienené operátory Javascriptu - Konštrukt IF-ELSE - Podmienené Javascript - Základy

Zdroj tohto interaktívneho príkladu je uložený v úložisku GitHub. Ak by ste chceli prispieť k projektu interaktívnych príkladov, naklonujte https://github.com/mdn/interactive-examples a pošlite nám žiadosť o stiahnutie.

Syntax

if (podmienka) vyhlásenie1 podmienka Výraz, ktorý sa považuje za pravdivý alebo nepravdivý. príkaz1 Príkaz, ktorý sa vykoná, ak je podmienka pravdivá. Môže to byť akýkoľvek príkaz, vrátane ďalej vnorených príkazov if. Ak chcete vykonať viacero príkazov, použite blokový príkaz (...) na zoskupenie týchto príkazov. Ak chcete vykonať žiadne príkazy, použite prázdny príkaz. statement2 Príkaz, ktorý sa vykoná, ak je podmienka nepravdivá a existuje klauzula else. Môže to byť akýkoľvek príkaz, vrátane blokových príkazov a ďalej vnorených príkazov if.

Popis

Viacnásobné príkazy if ... else môžu byť vnorené, aby sa vytvorila klauzula else if. Všimnite si, že v JavaScripte nie je žiadne kľúčové slovo elseif (jedným slovom).

If (podmienka1) príkaz1 else if (podmienka2) príkaz2 else if (podmienka3) príkaz3 ... else príkazN

Ak chcete vidieť, ako to funguje, takto by to vyzeralo, keby bolo vnorenie správne odsadené:

If (podmienka1) príkaz1 else if (podmienka2) príkaz2 else if (podmienka3) ...

Na vykonanie viacerých príkazov v rámci klauzuly použite blokový príkaz ((...)) na zoskupenie týchto príkazov. Vo všeobecnosti je dobrou praxou vždy používať blokové príkazy, najmä v kóde zahŕňajúcom vnorené príkazy if:

Ak (podmienka) (výroky1) else (výroky2)

Nezamieňajte si primitívne booleovské hodnoty pravda a nepravda s pravdivosťou alebo nepravdivosťou boolovského objektu. Akákoľvek hodnota, ktorá nie je nepravdivá, nedefinovaná, null, 0, -0, NaN alebo prázdny reťazec (""), a akýkoľvek objekt vrátane boolovského objektu, ktorého hodnota je nepravda, sa pri použití ako podmienka považuje za pravdivú. Napríklad:

Var b = new Boolean (false); ak (b) // je táto podmienka pravdivá

Príklady

Použitie if ... else

if (cipher_char === from_char) (výsledok = výsledok + na_znak; x ++;) else (výsledok = výsledok + jasný_znak;)

Použitie else if

Všimnite si, že v JavaScripte neexistuje syntax elseif. Môžete ho však napísať s medzerou medzi else a if:

If (x> 50) (/ * urob správnu vec * /) else if (x> 5) (/ * urob správnu vec * /) else (/ * urob správnu vec * /)

Priradenie v rámci podmieneného výrazu

Je vhodné nepoužívať jednoduché priradenia v podmienenom výraze, pretože priradenie môže byť pri pohľade na kód zamenené s rovnosťou. Nepoužívajte napríklad nasledujúci kód:

Ak (x = y) (/ * urobte správnu vec * /)

Ak potrebujete použiť priradenie v podmienenom výraze, bežnou praxou je umiestniť okolo priradenia ďalšie zátvorky. Napríklad:

Ak ((x = y)) (/ * urobte správnu vec * /)

technické údaje

Špecifikácia Postavenie Komentujte
Najnovší koncept ECMAScript (ECMA-262)
Návrh
ECMAScript 2015 (6. vydanie, ECMA-262)
Definícia výrazu „if“ v tejto špecifikácii.
Štandardné
ECMAScript 5.1 (ECMA-262)
Definícia výrazu „if“ v tejto špecifikácii.
Štandardné
ECMAScript 3. vydanie (ECMA-262)
Definícia výrazu „if“ v tejto špecifikácii.
Štandardné
ECMAScript 1. vydanie (ECMA-262)
Definícia výrazu „if“ v tejto špecifikácii.
Štandardné Počiatočná definícia

Kompatibilita prehliadača

Tabuľka kompatibility na tejto stránke je vygenerovaná zo štruktúrovaných údajov. Ak by ste chceli prispieť k údajom, pozrite si https://github.com/mdn/browser-compat-data a pošlite nám žiadosť o stiahnutie.

Aktualizujte údaje o kompatibilite na GitHub

DesktopMobilnéServer
ChromeHranaFirefoxinternet Explorer OperaSafariWebové zobrazenie AndroidChrome pre AndroidFirefox pre AndroidOpera pre AndroidSafari na iOSInternet SamsungNode.js
ak... inakPlná podpora prehliadača Chrome 1Úplná podpora Edge 12Plná podpora Firefoxu 1Plná podpora IE 3Opera Plná podpora ÁnoPlná podpora Safari ÁnoWebView Plná podpora pre Android 1Chrome Plná podpora pre Android 18Firefox Plná podpora pre Android 4Opera Android Plná podpora ÁnoSafari iOS Plná podpora ÁnoSamsung Internet Android Plná podpora 1.0nodejs Plná podpora Áno

V každodennom živote je často potrebné urobiť rozhodnutie nebyť, v závislosti od určitého stavu. Napríklad, ak je cez víkend teplé počasie, potom pôjdeme k moru, inak, ak je zamračené, budeme sedieť doma.

To je tiež veľmi bežné v programovaní. Na to existujú dva podmienené príkazy, sú to if-else a switch-case... V tomto článku vám poviem o operátorovi if-else av ďalšom článku o prepínači.

Syntax podmieneného príkazu if-elseĎalšie:


Ak je podmienka pravdivá, vykoná sa kód z bloku if, v opačnom prípade, ak je podmienka nepravdivá, vykoná sa kód z bloku else.

Pre lepšie pochopenie si zoberme taký jednoduchý príklad, máme istú sumu peňazí a chceme si kúpiť auto a tu hneď nastáva taká podmienka, ak máme dosť peňazí, tak si toto auto môžeme kúpiť, inak nemôže.

Var peniaze = 35000; // Povedzme, že máme 35 000 eur // Auto, ktoré si chceme kúpiť, stojí 50 000 eur. A takáto podmienka nastane, ak (peniaze> 50 000) (document.write ("Môžeme si kúpiť auto");) else (document.write ("Nie je dosť peňazí na kúpu auta"));)

Uložíme dokument, otvoríme ho v prehliadači a uvidíme, že sa na stránke zobrazí nasledujúca správa „Nedostatok peňazí na kúpu auta“. Ak by sme mali viac ako 50 000 eur, tak by sa vykonal kód z bloku if. Ak by sme mali presne 50 000 eur, tak by sme si tiež nemohli kúpiť auto, lebo 50 000 nie je viac ako 50 000. Aby podmienka v tomto prípade platila, treba napísať znamienko väčšie alebo rovnítko ( > =)...

Komentujte! Logická operácia rovná sa zapisuje dvoma znakmi rovnosti (==)... Existuje aj logická operácia menšia alebo rovná (

pomocou kučeravých zátvoriek

Ak existuje iba jeden operátor, potom sú zložené zátvorky voliteľné, ak je v bloku viac operátorov, potom sú potrebné zložené zátvorky.

Vyššie uvedený príklad bude fungovať dobre bez zložených zátvoriek, pretože oba bloky obsahujú iba jeden operátor.

Vnútri, ak, môžete napísať ľubovoľné logické operácie či sú jednoduché alebo zložité. Môžete tiež použiť operátory AND (&&) a OR (||).

Komentujte! Prítomnosť bloku else je voliteľná.

Napríklad, ak sa a rovná b a c sa rovná d, zobrazíme zodpovedajúcu správu, v opačnom prípade, ak neexistuje žiadny iný blok, jednoducho prejdeme na ďalší riadok.

Var a = 4, b = 4, c = 8, d = 8; if ((a == b) && (c == d)) document.write ("a sa rovná b A c sa rovná d"); document.write („Ďalší riadok kódu“);

Vyhlásenie if - else if - else

Po bloku if môže nasledovať jeden alebo viac blokov else if a na konci je blok else. To je užitočné, keď potrebujete použiť viac ako jednu podmienku.


Pre lepšie pochopenie si zoberme príklad z bežného života. Napríklad máme určitý počet predajní. Ak máme v miestnosti len jednu zásuvku, tak môžeme pripojiť len jedno zariadenie, ak sú dve zásuvky, tak dve zariadenia a ak ich je viac, tak všetky zariadenia z domu môžeme pripojiť do elektrickej siete.

Teraz prejdime k programovaniu.

Var zásuvka = 2; // Počet zásuviek v dome if (zásuvka == 1) document.write ("

Môžeme pripojiť iba jedno zariadenie

"); else if (socket == 2) (document.write ("

Môžeme pripojiť iba dve zariadenia

"); document.write ("

Napríklad televízor a notebook

");) else (document.write ("

Všetky zariadenia z domu vieme pripojiť do elektrickej siete

"); }

V závislosti od hodnoty premennej zásuvky sa spustí tento alebo ten blok kódu. Ako ste už pravdepodobne pochopili, ak sa socket rovná 1, potom bude fungovať prvý blok kódu. Ak je zásuvka 2, spustí sa druhý blok kódu a ak má zásuvka inú hodnotu (aj záporné číslo), spustí sa tretí blok kódu.

Skrátený zápis, ak inak

Skrátený zápis možno použiť v prípade, keď v závislosti od určitej podmienky môže premenná získať jednu alebo druhú hodnotu.


Napríklad, ak je hodnota premennej a väčšia ako hodnota premennej b, potom do premennej x napíšeme nasledujúcu správu: "Premenná a je väčšia ako premenná b", inak napíšeme, že " Premenná a je menšia ako premenná b".

Var a = 50, b = 100, x; x = (a> b)? "

Premenná a viac premenná b

" : "

Premenná a menej premenná b

"; // Vytlačí výsledný dokument document.write (x);

To je všetko, o čom som vám chcel povedať v tomto článku. Podmienený operátor if-else sa používa viac ako v každom skripte, preto je veľmi dôležité poznať ho a rozumieť mu. V ďalšom článku vám poviem o jednom podmienenom prepínači.

V tomto článku sa pozrieme na podmienené a logické operátory jazyka JavaScript.

Podmienené operátory JavaScriptu

Podmienené operátory sú operátory jazyka JavaScript (ECMAScript), ktoré v závislosti od určitej podmienky umožňujú vykonať jednu alebo viac konkrétnych inštrukcií.

Formuláre podmienených operátorov v JavaScripte:

  • podmienený príkaz if (s jednou vetvou);
  • podmienený operátor if ... else (s dvoma vetvami);
  • podmienený príkaz else if ... (s viacerými vetvami);
  • ternárny operátor (?:);
  • vyhlásenie o výbere prepínača.

Podmienený príkaz if

Syntax príkazu if je:

Ak (podmienka) vyhlásenie

Príkaz if pozostáva z:

  • kľúčové slovo ak;
  • podmienka (výrazy v zátvorkách), ktorá musí byť pravdivá alebo nepravdivá (alebo pretypovaná na jednu z týchto hodnôt);
  • pokyny, ktoré treba dodržiavať ak je podmienka pravdivá alebo sa na ňu hodí.

Napríklad:

Ak (pravda) počet = 4;

V tomto príklade sa ako podmienka používa pravda. To znamená, že počet inštrukcií = 4 bude vždy vykonaný. Tento príklad je uvedený len na objasnenie princípu fungovania operátora if, pretože je to nezmyselné.

Zvýšme napríklad hodnotu premennej votes o 1, ak je to (jej typ) číslo:

If (typ hlasov === "počet") hlasov ++;

Ak potrebujete vykonať niekoľko pokynov, musíte ich umiestniť do zložených zátvoriek:

If (typ hlasov === "počet") (hlasy ++; console.log ("Počet hlasov:" + hlasy);)

If (typ hlasov === "počet") (hlasy ++;)

Ak ... iné vyhlásenie

Operátor if ... else sa používa, keď je potrebné vykonať niektoré inštrukcie, ak je podmienka pravdivá, a iné, ak je nepravdivá.

Syntax:

If (podmienka) (jeden alebo viac príkazov (vykonajú sa, keď je podmienka pravdivá alebo sa zmení na pravdivú)) else (jeden alebo viacero príkazov (vykonajú sa, keď je podmienka nepravdivá alebo sa prevrhne na nepravda))

Napríklad vytlačte na konzolu správu o tom, či je číslo párne alebo nie:

If (číslo % 2) (console.log („Číslo je nepárne!“);) Else (console.log („Číslo je párne!“);)

Pravidlo na konverziu podmienky na pravdivú alebo nepravdivú

Ak výraz v príkaze if nie je pravdivý alebo nepravdivý, JavaScript ho prenesie na jednu z týchto hodnôt. Túto akciu vykonáva pomocou takzvaného „pravidla klamstiev“.

Význam tohto pravidla: ktorýkoľvek výraz sa vyhodnotí ako true, okrem nasledujúcich hodnôt:

  • falošný (falošný);
  • "" alebo "" (prázdny reťazec);
  • NaN (špeciálny číselný typ údajov „nie je číslo“);
  • 0 (číslo "nula");
  • null ("prázdna" hodnota);
  • undefined ("nedefinovaná" hodnota).

Napríklad v konzole prehliadača zobrazíme uvítaciu správu v závislosti od toho, aká hodnota je uložená v premennej nameUser:

If (nameUser) (console.log ("Ahoj," + meno + "!");) Else (console.log ("Ahoj, hosť!");)

Ak premenná nameUser obsahuje prázdny reťazec, potom podľa pravidla nepravdy bude pretypovaná na hodnotu false. Preto sa v konzole zobrazí správa „Ahoj, hosť!“. ...

A ak napríklad premenná nameUser obsahuje reťazec „Timur“, potom sa výraz v podmienke skonvertuje na hodnotu true. Výsledkom je, že konzola zobrazí správu "Ahoj, Timur!" ...

Vyhlásenie else if ... (viacero podmienok)

Syntax:

If (podmienka1) (príkazy 1) else if (podmienka2) (príkazy 2) else if (podmienka3) (príkazy 3 // ...) else if (podmienkaN) (príkazy N) else (príkazy, ktoré sa vykonajú, ak ani jeden podmienok sa nerovná pravdivej alebo nie je donútená k tejto hodnote)

Podmienený (ternárny) operátor (? :)

Ternárny operátor Je operátor JavaScript, ktorý možno použiť, keď je potrebné v závislosti od podmienky vykonať jeden z dvoch daných výrazov.

Syntax:

podmienka? výraz1: výraz2

Ternárny operátor má tri operandy, ktoré sú oddelené znakmi? a: . Podmienka ternárneho operátora je špecifikovaná v prvom operande. Môže byť tiež uvedený v zátvorkách. Ak je podmienka pravdivá alebo sa skonvertuje na túto hodnotu, vykoná sa výraz1, v opačnom prípade výraz 2.

Napríklad:

(počet > 10)? console.log ("Číslo je väčšie ako 10!"): console.log ("Číslo je menšie alebo rovné 10");

JavaScript umožňuje viacero ternárnych operátorov (? :):

Var dayNumber = nový dátum (). GetDay (); deň = (číslo dňa === 0)? "Nedeľa": (číslo dňa === 1)? "Pondelok": (číslo dňa === 2)? "Utorok": (číslo dňa === 3)? Streda: (číslo dňa === 4)? "Štvrtok": (číslo dňa === 5)? "Piatok": (číslo dňa === 6)? "Sobota": "Neznámy deň v týždni"; console.log ("Dnes" + day.toLowerCase () + ".");

Vyššie uvedený príklad, ale s použitím viacnásobného zápisu príkazu if ... else:

Var dayNumber = nový dátum (). GetDay (); if (dayNumber === 0) (deň = "nedeľa";) else if (dayNumber === 1) (deň = "pondelok";) else if (dayNumber === 2) (deň = "utorok";) else if (dayNumber === 3) (deň = "streda";) else if (dayNumber === 4) (deň = "štvrtok";) else if (dayNumber === 5) (deň = "piatok"; ) else if (dayNumber === 6) (deň = "sobota";) else (deň = "Neznámy deň v týždni";) console.log ("Dnes" + day.toLowerCase () + ".");

Výpis prepnutia

Príkaz switch je navrhnutý tak, aby vykonal jednu verziu niekoľkých inštrukcií v závislosti od hodnoty výrazu. Voľba jednej alebo druhej možnosti je určená prísnou rovnosťou výsledku výrazu k hodnote prípadu.

Syntax pre príkaz switch je:

Switch (výraz) (case value1: // ... inštrukcie, ktoré sa vykonajú, ak je výsledkom vyhodnotenia výrazu prerušenie "value1"; // voliteľný príkaz (ak sa nepoužije, vykoná sa nasledujúci príkaz príkazu switch byť vykonaný) case value2: // ... príkazy, ktoré sa vykonajú, ak sa výsledok vyhodnotenia výrazu rovná zlomu "hodnota2"; // voliteľný príkaz (ak sa nepoužije, vykoná sa nasledujúci príkaz príkazu switch byť vykonaný) // ... case valueN: //. .. inštrukcie, ktoré sa vykonajú, ak je výsledkom vyhodnotenia výrazu prerušenie "valueN"; // voliteľný príkaz (ak sa nepoužije, nasledujúci príkaz príkaz switch sa vykoná) predvolené: // inštrukcie, ktoré sa vykonajú, ak výsledok výrazu nie je, nie je jednou z hodnôt)

Predvolené kľúčové slovo je voliteľné. Používa sa, keď je potrebné špecifikovať inštrukcie, ktoré sa majú vykonať, ak sa výsledok výrazu nerovná žiadnej hodnote typu case.

Príkaz break je voliteľný. Je navrhnutý tak, aby prerušil vykonávanie príkazu switch a preniesol inštrukciu po ňom do riadiaceho systému.

Ukážme si napríklad správu v konzole prehliadača o počte sladkostí:

Var countCandyBoys = 1, countCandyGirls = 2, správa; prepínač (countCandyBoys + countCandyGirls) (1. prípad: správa = "Jeden cukrík"; zlom; prípad 2: prípad 3: správa = "Dve alebo tri cukríky"; zlom; prípad 4: správa = "Štyri cukríky"; zlom; predvolené: message = "Nie jedna, nie dve, nie tri alebo štyri cukríky";) // vytlačí správu do konzoly console.log (správa);

Vo vyššie uvedenom príklade je vyhodnotený výraz 3. Preto sa vykoná správa = "Dve alebo tri cukríky" a príkazy break. Príkaz break preruší ďalšie vykonávanie príkazu switch a prenesie riadenie na príkaz nasledujúci za ním, t.j. console.log (správa). Vytlačí správu do konzoly "Dve alebo tri sladkosti".

Napríklad vytlačte aktuálny deň v týždni na konzole:

Var deň = ""; switch (new Date (). getDay ()) (prípad 0: deň = „nedeľa“; prestávka; prípad 1: deň = „pondelok“; prestávka; prípad 2: deň = „utorok“; prestávka; prípad 3: deň = „streda“; prestávka; prípad 4: deň = „štvrtok“; prestávka; prípad 5: deň = „piatok“; prestávka; prípad 6: deň = „sobota“; prestávka; predvolené nastavenie: deň = „Neznámy deň v týždni“ ;) console.log ("Dnes" + day.toLowerCase () + ".");

Príklad, ktorý nepoužíva príkaz break:

Var vysledok = "uspech"; prepínač (výsledok) (malé písmená "úspech": console.log ("Úspech!"); malé písmená "invalidCaptcha": console.log ("Nesprávne captcha!"); predvolené: console.log ("Chyba!");)

V tomto príklade je výraz pre príkaz switch úspešný. Následne sa vykoná príkaz console.log ("Success!"), ktorý zobrazí správu "Success!" do konzoly. Ale keďže za ním nie je žiadny príkaz break, vykonávanie skriptu bude pokračovať v ďalšej verzii. Príkazy sa teda budú vykonávať, kým sa na ceste nenájde prerušenie alebo kým sa nedosiahne koniec príkazu switch. V dôsledku vykonania tohto príkladu sa v konzole zobrazia 3 správy: "Success!" , "Neplatná captcha!" a "Chyba!" ...

V niektorých prípadoch môže byť toto správanie požadované, ale v tomto nie. Tu sa jednoducho stala chyba.

Opravená verzia príkladu:

Var vysledok = "uspech"; prepínač (výsledok) (malé písmená "úspech": console.log ("Úspech!"); zlom; veľkosť písmen "invalidCaptcha": console.log ("nesprávny obrázok captcha!"); zlom; predvolené: console.log ("Chyba!" ;)

Logické operátory

V JavaScripte sa rozlišujú nasledujúce logické operátory:

  • && - logické "AND";
  • || - logické "ALEBO";
  • ! -logické "NIE".

Ak sa v boolovskom výraze operand1 && operand2 použijú boolovské hodnoty, výraz sa vyhodnotí ako pravdivý, ak je každý pravdivý; inak je hodnota tohto výrazu nepravdivá.

Nepravda && nepravda // nepravda pravda && nepravda // nepravda nepravda && pravda // nepravda pravda && pravda // pravda

Ak boolovský výraz operand1 && operand2 používa iné ako boolovské hodnoty, potom sa výraz vyhodnotí ako operand1, ak ho možno pretypovať na nepravdu; inak sa tento výraz vyhodnotí ako operand2.

5 && 0 // 0 1 && 5 // 5 "reťazec" && nedefinovaný // nedefinovaný "reťazec1" && "reťazec2" // "reťazec2"

Ak je v logickom výraze operand1 || používajú sa boolovské hodnoty operand2, potom sa tento výraz vyhodnotí ako pravdivý, ak je aspoň jedna z nich pravdivá; inak je hodnota tohto výrazu nepravdivá.

Nepravda || nepravda // nepravda pravda || nepravda // pravda nepravda || pravda // pravda pravda || pravda

Ak je v logickom výraze operand1 || operand2 používa iné ako boolovské hodnoty, potom výsledkom tohto výrazu bude operand1, ak ho možno pretypovať na true; inak sa tento výraz vyhodnotí ako operand2.

5 || 0 // 5 1 || 5 // 1 "reťazec" || undefined // "reťazec" "reťazec1" || "riadok2" // "riadok1"

Booleovský výraz! Operand1 sa vyhodnotí ako pravdivý, ak je operand1 nepravdivý alebo ho možno pretypovať na túto hodnotu; inak sa tento výraz vyhodnotí ako nepravda.

False // true! True // false! "String" // false! 5 // false "

Reg.ru: domény a hosting

Najväčší registrátor a poskytovateľ hostingu v Rusku.

V prevádzke je viac ako 2 milióny doménových mien.

Propagácia, mail pre doménu, obchodné riešenia.

Svoj výber si už vybralo viac ako 700 tisíc zákazníkov po celom svete.

Bootstrap framework: rozloženie s rýchlou odozvou

Video kurz krok za krokom o základoch adaptívne rozloženie v rámci Bootstrap.

Naučte sa sádzať jednoducho, rýchlo a efektívne pomocou výkonného a praktického nástroja.

Rozloženie na objednávku a zaplatenie.

* Posunutím myši pozastavíte rolovanie.

Späť dopredu

JavaScript if-others funkcie a podmienky

Často s pomocou JavaScriptu keď sú splnené rôzne podmienky, je potrebné vykonať rôzne činnosti.

Povedzme napríklad, že ste napísali skript, ktorý kontroluje, ktorý prehliadač návštevník používa pri návšteve vašich stránok. Ak ide o Internet Explorer, mala by sa načítať stránka špeciálne navrhnutá pre IE, ak ide o akýkoľvek iný prehliadač, mala by sa načítať iná verzia tejto stránky.

Všeobecná syntax pre konštrukt if-else je nasledovná:

If (podmienka) (akcia) else (akcia2);

Ako príklad zvážte nasledujúci kód:

If (prehliadač == "MSIE") (upozornenie ("Používate IE")) else (upozornenie ("Nepoužívate IE"));

Upozorňujeme, že sú použité všetky malé písmená. Ak napíšete „AK“, dôjde k chybe.

Všimnite si tiež, že porovnanie používa dvojité znamienko rovnosti (==).

Ak píšeme prehliadač = "MSIE" potom už len priradíme hodnotu MSIE premenná s názvom prehliadač.

Keď píšeme prehliadač == "MSIE", potom JavaScript „pochopí“, že chceme porovnávať, nie priradiť hodnotu.

Zložitejšie podmienky ak môžu byť vytvorené jednoducho ich pridaním napríklad do dielu inak už existujúcu štruktúru ak-inak:

If (podmienka) (akcia1) else (ak (iná podmienka) (akcia2) else (akcia3););

Napríklad:

If (prehliadač == "MSIE") (upozornenie ("Používate IE")) else (if (prehliadač == "Netscape") (upozornenie ("Používate Firefox")) else (upozornenie ("Používate nerozpoznaný prehliadač: ) ")); );

Logické operátory AND, OR a NOT

Pre ešte flexibilnejšie využitie konštrukcie ak-inak možno použiť takzvané logické operátory.

A napísané ako && a používa sa v prípadoch, keď potrebujete skontrolovať pravdivosť viac ako jednej podmienky.

Napríklad: Ak sú v chladničke vajcia a v chladničke slanina, potom môžeme jesť vajcia a slaninu.

Syntax je nasledovná:

If (podmienka1 && podmienka2) (akcia) if (hodina == 12 && minúta == 0) (upozornenie („Poludnie!“));

Alebo napísané ako || a používa sa, keď chceme skontrolovať pravdivosť aspoň jednej z dvoch alebo viacerých podmienok. (|| môžete získať podržaním klávesu Shift a klávesu \)

Napríklad: Ak je v chladničke mlieko, alebo ak je v chladničke voda, tak máme čo piť.

Syntax je nasledovná:

If (podmienka1 || podmienka2) (akcia) if (hodina == 11 || hodina == 10) (upozornenie („Poludnie ešte nenastalo!“));

nie napísané ako ! a používa sa na odmietnutie.

Napríklad: Ak v chladničke nie sú vajcia alebo nie je slanina, potom nemôžeme jesť ani vajcia, ani slaninu.

Syntax je:

If (! (Podmienka)) (akcia) if (! (Hodina == 11)) (upozornenie („Nie je 11 hodín“));

Funkcie v JavaScripte

Namiesto jednoduchého pridávania JavaScriptu na stránku, takže prehliadač spustí kód, keď naň príde, môžete skript spustiť iba vtedy, keď nastane udalosť.

Napríklad ste vytvorili JavaScript, ktorého úlohou je zmeniť farba pozadia pri kliknutí na konkrétne tlačidlo. V tomto prípade musíte prehliadaču „povedať“, že tento skript by sa nemal spúšťať jednoducho preto, že je vo fronte.

Ak chcete zabrániť prehliadaču spustiť skript pri jeho načítaní, musíte skript napísať ako funkciu.

V tomto prípade sa JavaScript kód nespustí, kým si ho špeciálnym spôsobom „neopýtame“.

Pozri na uvedený príklad skript napísaný ako funkcia:

Kliknutím na tlačidlo uvidíte, čo skript robí:

Ak riadok výstraha ("Vitajte!"); neboli zapísané vo funkcii, potom by sa vykonalo vždy, keď prehliadač dosiahne tento riadok. Ale keďže sme to zapísali do funkcie, tento riadok sa nevykoná, kým nestlačíme tlačidlo.

Volanie funkcie (t. j. prístup k nej) sa vyskytuje v tomto riadku:

Ako vidíte, do formulára sme umiestnili tlačidlo a pridali udalosť onClick = "moja funkcia ()" pre tlačidlo.

V budúcich lekciách sa pozrieme na iné typy udalostí, ktoré spúšťajú funkcie.

Všeobecná syntax funkcií je nasledovná:

Názov funkcie funkcie (premenná1, premenná2, ..., premennáN) (// Tu je telo funkcie, akcie, ktoré vykonáva)

Rovnátka: { a } označujú začiatok a koniec funkcie.

Typickou chybou pri vytváraní funkcií je neopatrnosť a ignorovanie dôležitosti malých a veľkých písmen. Slovo funkciu by malo byť presne funkciu... Možnosť Funkcia alebo FUNKCIA vyhodí chybu.

Tiež pomocou veľké písmená hrá úlohu pri špecifikovaní názvov premenných. Ak máte funkciu s názvom moja funkcia (), potom pokus odkázať na ňu ako na Moja funkcia (), MYFUNCTION () alebo MyFunction () vyhodí chybu.

Páčil sa vám materiál a chcete sa poďakovať?
Stačí zdieľať so svojimi priateľmi a kolegami!


Pozri tiež:

Podmienený operátor umožňuje preskočiť alebo spustiť určitý blok kódu v závislosti od výsledku vyhodnotenia zadaného výrazu – podmienky. O podmienenom príkaze možno povedať, že je rozhodovacím bodom v programe, niekedy nazývaný aj príkaz vetvenia. Ak si predstavíme, že program je cesta a interpret PHP je cestujúci, ktorý po nej kráča, potom podmienené príkazy môžu byť reprezentované ako križovatky, kde sa programový kód rozvetvuje na dve alebo viac ciest a na takýchto križovatkách si interpret musí vybrať, ktorú cesta dalej....

Ak vyhlásenie

Príkaz if je najjednoduchší z rozvetvených príkazov.

Syntax príkazu if je:

Príkaz if najskôr vyhodnotí podmienený výraz uvedený v zátvorkách, výsledkom tohto výrazu je boolovská hodnota. Ak je výsledok pravdivý, potom sa príkaz vykoná. Ak výraz vráti hodnotu false, potom sa príkaz nevykoná. Ako podmienku možno použiť výraz akejkoľvek zložitosti.

Ak je v tele príkazu if iba jeden príkaz, potom je možné, ale nie povinné, uzavrieť ho do zložených zátvoriek. Ak však potrebujete vykonať v tele príkazu if nie jeden príkaz, ale niekoľko príkazov, týchto niekoľko príkazov musí byť uzavretých v zložených zátvorkách. Všimnite si, že po uzávierke kučeravá ortéza nepoužívajte bodkočiarky.

Nasledujúci kód demonštruje použitie príkazu if:

Príkazy If môžu byť vnorené do iných príkazov if:

Pozor na posledný príklad: príkaz nemusí byť napísaný presne pod príkaz if, ak príkaz nie je veľký, môže byť napísaný aj v jednom riadku.

Ak inak vyhlásenie

A tak sme sa dozvedeli, že príkaz if vám umožňuje vykonávať príkazy, ak je podmienka pravdivá. Ak je podmienka nepravdivá, nevykoná sa žiadna akcia. Často je však potrebné vykonať niektoré inštrukcie, ak je určitá podmienka pravdivá, a iné inštrukcie, ak je podmienka nepravdivá. V takýchto prípadoch sa používa vetvenie. Pozostáva z príkazu if, za ktorým nasleduje blok príkazov a kľúčové slovo else, za ktorým nasleduje ďalší blok príkazov.

Syntax príkazu if else je:

Klauzula else je nepovinná. Blok príkazov umiestnený za else sa štandardne vykoná, t.j. keď podmienený výraz v if vráti hodnotu false. Príkaz else nemožno použiť okrem príkazu if. Blok else by sa mal umiestniť až za príkaz if, možno ho považovať za predvolenú akciu.

Miernou úpravou nášho predchádzajúceho príkladu môžeme vidieť, ako funguje príkaz if else, ak podmienka vráti hodnotu false:

Príkaz if else môže byť vnorený. Takéto vnorené podmienky sú v praxi celkom bežné. Príkaz if je vnorený, ak sa nachádza v inom bloku if alebo else. Ak kód používa niekoľko príkazov if za sebou, ináč vždy odkazuje na najbližší, ak:

Posledné iné neplatí pre if ($ a), keďže nie je vo vnútrobloku, takže najbližšie k nemu je if ($ i). Príkaz else vo vnútri bloku odkazuje na if ($ b), pretože toto if je k nemu najbližšie.

Elseif / else if

Príkaz if / else vyhodnotí hodnotu podmieneného výrazu a spustí konkrétnu časť programového kódu. Ale čo ak potrebujete vykonať jeden z mnohých kúskov? Ak potrebujete skontrolovať niekoľko podmienok za sebou, potom je na to vhodný konštrukt elseif alebo else if (je to ten istý konštrukt, len inak napísaný). Formálne nie je nezávislý. PHP konštrukcia je len bežný programovací štýl, ktorý zahŕňa opakovanie príkazov if / else. Umožňuje kontrolu dodatočných podmienok, kým sa nenájde pravdivá alebo kým sa nedosiahne blok else. Elseif / else if sa musí objaviť za príkazom if a pred príkazom else, ak existuje.

Testujú sa tu tri podmienky a vykonávajú sa rôzne akcie v závislosti od hodnoty premennej $ username.

V skutočnosti na tomto úryvku nie je nič zvláštne. Je to len postupnosť príkazov if, kde každý príkaz if je súčasťou príkazu else predchádzajúceho príkazu if. Pre tých, ktorí sa prvýkrát stretli s touto formou zápisu a nie je mu veľmi jasné, ako to funguje, prepíšeme rovnaký príklad, len v ekvivalentnej syntaktickej forme, ktorá plne ukazuje vnorenie štruktúr: