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

Je možné vnoriť viacero príkazov if...else, 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:

If (podmienka) ( statement1 ) else ( statement2 )

Nezamieňajte si primitívne boolovské hodnoty pravda a nepravda s pravdivosťou alebo nepravdivosťou boolovského objektu. Akákoľvek hodnota, ktorá nie je false , undefined , 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:

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

Príklady

Použitie if...inak

if (cipher_char === from_char) ( result = result + to_char; x++; ) else ( result = result + clear_char; )

Použitie else if

Všimnite si, že v JavaScripte neexistuje žiadna iná syntax if. však môžeš napíšte to 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) ( /* urob 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)) ( /* urob 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 Operasafariandroid webviewChrome pre AndroidFirefox pre AndroidOpera pre AndroidSafari na iOSInternet SamsungNode.js
ak...inakPlná podpora prehliadača Chrome 1Plná 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

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, riešenia pre podnikanie.

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.

Nalíčte sa na objednávku a získajte peniaze.

*Prejdením myšou pozastavíte rolovanie.

Späť dopredu

Funkcie a podmienky if-else v JavaScripte

Často s pomocou JavaScriptu je potrebné vykonať rôzne akcie za rôznych podmienok.

Napísali ste napríklad skript, ktorý kontroluje, ktorý prehliadač návštevník používa pri návšteve vašej stránky. 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 if-others konštruktyĎalšie:

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

Ako príklad zvážte tento kód:

If (browser=="MSIE") ( alert("Používate IE") ) else ( alert("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 na porovnanie sa používa dvojité znamienko rovnosti (==).

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

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

Viac ťažké 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 ( if (iná podmienka) ( akcia2 ) else ( akcia3 ); );

Napríklad:

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

Logické operátory AND, OR a NOT

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

A napísané ako && a používa sa, keď je potrebné overiť pravdivosť viacerých podmienok.

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

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 otestovať pravdivosť aspoň jednej z dvoch alebo viacerých podmienok. (Môžete získať || pri držaní kláves shift a kláves \)

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

Syntax je nasledovná:

If (podmienka1 || podmienka2) ( akcia ) if (hodina==11 || hodina==10) ( alert("Ešte nie je poludnie!") );

nie napísané ako ! a používa sa na negáciu.

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

Syntax je:

If (!(podmienka)) ( akcia ) if (!(hodina==11)) ( alert("Nie je 11 hodín") );

Funkcie v JavaScripte

Namiesto jednoduchého pridávania JavaScriptu na stránku, aby prehliadač spustil kód, keď ho dosiahne, môžete skript spustiť iba pri spustení udalosti.

Povedzme napríklad, že ste vytvorili JavaScript, ktorého úlohou je zmeniť farbu pozadia stránky po kliknutí na určité tlačidlo. V tomto prípade musíte prehliadaču „povedať“, že tento skript by sa nemal spúšťať jednoducho preto, že ho už front dosiahol.

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 ho o to špeciálnym spôsobom „nevyzveme“.

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

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

Ak je linka upozornenie ("Vitajte!"); by sa nezapísalo do funkcie, potom by sa vykonalo vždy, keď by prehliadač dosiahol tento riadok. Ale keďže sme to napísali do funkcie, tento riadok sa nevykoná, kým neklikneme na tlačidlo.

Volanie funkcie (t. j. jej volanie) sa vyskytuje v tomto riadku:

Ako vidíte, do formulára sme umiestnili tlačidlo a pridali udalosť onClick="myfunction()" 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, čo robí)

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

Typickou chybou pri vytváraní funkcií je neopatrnosť a ignorovanie dôležitosti veľkosti písmen. Slovo funkciu by malo byť presne funkciu. Možnosť funkciu alebo FUNKCIA spôsobí chybu.

Okrem toho použitie veľké písmená zohráva úlohu aj pri pomenovaní premenných. Ak máte funkciu s názvom mojafunkcia(), potom pokus riešiť to ako mojafunkcia(), MYFUNCTION() alebo MyFunction() spôsobí chybu.

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


Pozri tiež:

var a = 10; varb = (a>1) ? 100:200; upozornenie (b);

Ak podmienka a>1 true, potom premenná b priradiť hodnotu 100 , inak sa premennej b priradí hodnota 200 .

Úloha Js 3_4. Doplňte kód: 3 lokálne premenné sú deklarované pomocou kľúčové slovo var. Premennej max je potrebné priradiť hodnotu nasledujúceho ternárneho operátora: ak je a väčšie ako b , potom vráti a , inak vráti b .
Útržok kódu:

ak (a*b< 6) { result = "Мало"; } else { result = "Много"; }


Otázky na sebaovládanie:

  1. Aká je syntax ternárneho operátora?
  2. Koľko argumentov má ternárny operátor?

Príkaz Switch v JavaScripte - switch

Príkaz javascript switch slúži na testovanie premennej pre viacero hodnôt:

Syntax:

prepínač (premenná alebo výraz) ( prípad možnosť1: //..blok príkazov.. možnosť prerušenia prípadu 2: //..blok príkazu.. predvolené prerušenie: //..blok príkazu.. )

Kontroluje sa hodnota premennej alebo výrazu: v každom prípad skontroluje sa jedna z hodnôt, v prípade vhodnej hodnoty sa vykoná jeden alebo druhý blok príkazov zodpovedajúci danej hodnote prípad.

Blok počnúc úradné slovo predvolenú hodnotu možno vynechať. Blokové príkazy sa vykonajú, ak nie je žiadna z uvedených hodnôt prípad nesedí.

Dôležité: Príkaz break sa vyžaduje po každej uvažovanej hodnote premennej (po každej prípad); ak sa nepoužije, zobrazia sa všetky nižšie uvedené výpisy

Porovnajte s operátorom AK:

var a = 2; switch(a) ( case 0: // if (a === 0) case 1: // if (a === 0) alert("Nula or one"); // potom výstup... break; case 2: // if (a === 2) alert("Dva"); // potom výstup... break; default: // else alert("Many"); // inak výstup... )

Ako zoskupiť viacero možností?

Na vykonanie rovnakých príkazov je možné zoskupiť niekoľko prípad. Ako v príklade vyššie:

Prípad 0: prípad 1: alert("Nula alebo jedna"); prestávka; ...

Keď a = 0 a a = 1, vykoná sa rovnaký príkaz: alert("Nula alebo jedna");

Príklad 4: Požiadajte používateľa, aby zadal farbu. Odoslať preklad na anglický jazyk zadaná farba. Pre farbu "Modrá" a "Modrá" produkovať rovnakú hodnotu.


✍ Riešenie:
  • Vytvorte webovú stránku s html kostrou a tagom skript.
  • Inicializovať premennú farba
  • var color = prompt("Aká farba?" );

    var color = prompt("Aká farba?");

  • Skontrolujte hodnotu premennej pomocou konštrukcie prepínač, pričom pre každú hodnotu sa zobrazí zodpovedajúci preklad:
  • prepínač (farba) ( malé a veľké písmená "červené" : upozornenie("červené"); prerušenie; prerušenie veľkosti písmen "zelené": upozornenie("zelené"); prerušenie; // ...

    Ak premenná farba má hodnotu "červená", potom výstup na modálne okno preklad - "červená" a výstup z konštrukcie (prestávka;). Ak premenná farba má hodnotu "zelená", potom v modálnom okne zobrazte preklad - "zelená" a ukončite konštrukciu (prestávka;).

  • Pre kvety "Modrá" a "Modrá" urobte zoskupenie:
  • // ... case "blue": case "blue": alert("blue"); prestávka; //...

    Ak premenná farba má hodnotu „modrá“ alebo premenná farba má hodnotu "modrá", potom v modálnom okne zobrazte preklad - "modrá" a ukončite konštrukciu (prestávka;).

  • Usporiadajte výstup pre tie farby, ktoré program neposkytuje:
  • // ... predvolené : alert( "Pre túto farbu nemáme informácie") ) // koncový spínač

    // ... predvolené: alert("y nemáme žiadne informácie o tejto farbe") ) // koniec prepínača

  • Otestujte skript v prehliadači.

Úloha Js 3_6. Nájdite a opravte chyby v nasledujúcom útržku kódu:

14 15 16 17 varnumber = prompt( "Zadajte číslo 1 alebo 2:"); prepínač (číslo) ( veľkosť písmen "1" ( document.write ("Jedna" ) ; ); ; zlom ; veľkosť písmen "2" ( document.write ("Dva" ) ; ) ; zlom ; predvolené ( document.write ( "Zadali ste inú hodnotu ako 1 a 2") ; } ; }

var cislo = prompt("Zadajte cislo 1 alebo 2:"); prepnúť (číslo) ( veľkosť písmen "1" ( document.write("Jeden"); ); zlom; veľkosť písmen "2" ( document.write("Dva"); ); zlom; predvolené ( document.write("Zadali ste hodnota iná ako 1 a 2"); ); )


Úloha Js 3_7.Čo sa zobrazí na obrazovke po spustení nasledujúceho kódu?:

1 2 3 4 5 6 7 8 9 10 11 12 13 hodnota var = "2" ; prepínač (hodnota) ( case "1" : case "2" : case "3" : document.write ("Ahoj" ) ; break ; case "4" : case "5" : document.write ("World" ); predvolená hodnota: document.write("Chyba" ) ; )

hodnota var = "2"; prepínač (hodnota) ( case "1": case "2": case "3": document.write("Ahoj"); break; case "4": case "5": document.write("World" ); predvolené: document.write("Chyba"); )


Úloha Js 3_8. Požiadajte používateľa o číslo - počet vran na konári. V závislosti od zadaného čísla (nie viac ako 10) zobrazí hlásenie: - Sedím na konári 1 vrana- Sedí na konári 4 vrany- Sedí na konári 10 vran

  1. V závislosti od zadaného čísla sa mení koncovka slova. "vrana".
  2. Na kontrolu použite príkaz javascript switch.
  3. Uložiť táto strana v priečinku výsledkov (bude to užitočné pre ďalšiu prácu).


Otázky na sebaovládanie:

  1. V akom prípade je vhodné napr podmienený operátor použiť konštrukciu prepínač?
  2. Aký je účel predvoleného bloku vo výpise prepínač?
  3. Je potrebné v konštrukcii použiť príkaz break prepínač?
  4. Ako sa robí zoskupovanie pre viaceré možnosti hodnôt v operátorovi prepínač?

Príkazy slučky v JavaScripte - For

Syntax:

for(počiatočná hodnota počítadla; podmienka; prírastok počítadla) ( //..blok príkazu.. )

Dôležité: Slučka javascript for sa používa, keď je vopred známe, koľkokrát sa majú cyklické akcie opakovať (koľko opakovaní má slučka)

  • Priraďovací výraz sa používa ako počiatočná hodnota počítadla iterácií: napríklad i=0 – počítadlo slučky začína od nuly:
  • for(var i = 0; podmienka; prírastok počítadla) ( //.. blok príkazov.. )

  • Ako prírastok počítadla je uvedený krok, o ktorý sa má počítadlo zvýšiť: napríklad znamená, že každá iterácia slučky bude sprevádzaná jej zvýšením o 1 :
  • for(var i = 0; podmienka; i++) ( //..blok príkazu.. )

  • Podmienka slučky je koncová hodnota počítadla: napríklad i10 zastaví slučku:
  • for(var i = 0; i<10; i++) { //..блок операторов.. }

Zvážte príklad použitia cyklu for v javascripte:

Príklad 5: Vypíšte postupnosť čísel 0 1 2 3 ... 9 , každá číslica - z nového riadku. 0 1 2 ... 8 9


✍ Riešenie:
  • Na zobrazenie postupnosti čísel použijeme počítadlo cyklu for, ktoré by malo zmeniť svoju hodnotu z 0 predtým 9 podľa poradia.
  • Tak pre počiatočná hodnota počítadla slučky nastavte hodnotu na 0 ; ako podmienky cyklu nastaviť konečnú hodnotu - ii=9; protikrok by sa mal rovnať 1 (i++), keďže rozdiel medzi členmi postupnosti je jeden:
  • pre (var i=0; i<10; i++) { document.write(i+"
    "); }

    V príklade sú hodnoty počítadla slučky zobrazené na obrazovke, pretože na obrazovke sa objaví prírastok počítadla i++ 0 1 2 3 ... 9 a každá číslica - z nového riadku (tag
    ).

  • Otestujte skript v prehliadači.

Úloha Js 3_9. 1 predtým 15 .

  1. Použite počítadlo slučiek ako postupnosť čísel pre.
  2. Pre sčítaciu premennú použite identifikátor premennej súčet.

Útržok kódu:

Pre (var i=...;...;...)( súčet = súčet + ...; ) ...

Výstupné príkazy slučky prestávka a ďalej v JavaScripte. Operátor VÝCHOD

Príkaz break preruší vykonávanie celého tela slučky, t.j. vypadne zo slučky v JavaScripte.

Zatiaľ čo príkaz continue preruší vykonávanie aktuálnej iterácie cyklu, ale zároveň pokračuje vo vykonávaní cyklu z nasledujúcej iterácie.

Zvážte fungovanie prestávky a pokračujte v príkazoch pomocou príkladu:

Príklad: Pochopte algoritmus útržkov kódu. Čo bude výstupom?

Útržok kódu:

1 2 3 4 5 6 pre (var i= 0; i< 10 ; i++ ) { if (i== 4 ) continue ; document.write (i+ "
" ); ak (i== 8) zlomiť ;)

pre (var i=0; i<10;i++) { if (i==4) continue; document.write(i+"
"); ak (i==8) zlomiť; )


✍ Riešenie:
  • V treťom riadku príkladu je podmienka, kvôli ktorej je číslo 4 sa nezobrazí: operátor ďalej prejde na ďalšiu iteráciu cyklu bez dokončenia aktuálnej.
  • V riadku č. 5 je slučka ukončená, ale číslo 8 sa vytlačí na obrazovku, pretože výstupný príkaz je pred podmienkou (na 4. riadku). Po stretnutí prestávka, tlmočník opustí slučku.
  • To. na obrazovke bude: 0 1 2 3 5 6 7 8 - každá číslica na novom riadku.

Úloha Js 3_10. Vytlačte súčet všetkých celých čísel z 1 predtým 15 , okrem celkového počtu 5 a 7 .

Výstupné vyhlásenie

Jazyk javactipt poskytuje operátor pre ukončenie programového kódu - operátor ukončenia.
Operátor sa najčastejšie používa na vylúčenie chyby zadávania používateľa.


Zvážte príklad:

Príklad 6: Požiadajte používateľa, aby zadal číslo. Ak nie číslo, zobrazte správu "Je potrebné číslo!" a zastavte program.


✍ Riešenie:
  • Inicializovať premennú číslo hodnota zadaná používateľom v modálnom okne:
  • var cislo = prompt("Zadajte cislo");

  • Pomocou funkcie parseInt na konverziu reťazca na celé číslo skontrolujte, či je vstupná hodnota číslo:
  • cislo=parseInt(cislo); // vráti NaN - nie číslo

    Ak zadáte nečíslo, funkcia vráti hodnotu NaN. nie číslo- nie číslo).

  • Skontrolujte hodnotu premennej číslo pomocou funkcie isNaN:
  • x = jeNaN(číslo); // vráti hodnotu true, ak hodnota nie je číselná

    Funkcia isNaN vracia hodnotu pravda ak premenná nie je číslo

  • Autor: pravidlo „klamstva“. organizovať kontrolu premennej hodnoty X. Ak hodnota nie je číselná, vytlačte príslušnú poznámku a ukončite program:
  • if (x)( alert("Potrebné číslo!"); exit; // ukončenie programu )

  • Ak chcete pokračovať v programe (ak bola zadaná hodnota číslo), zobrazte nasledujúce okno s výzvou na zadanie:
  • alert("Zadajte druhé číslo");// ak nezadáte číslo, operátor sa nevykoná

  • Otestujte skript v prehliadači.

Otázky na sebaovládanie:

  1. Uveďte tri parametre cyklu pre a vysvetliť ich účel.
  2. Ktoré príkazy sú určené na ukončenie cyklu a jeho prerušenie? Uveďte príklady ich použitia.
  3. Na čo slúži operátor? VÝCHOD?

Je možné mať viacero počítadiel v jednom FOR?

Pri použití je možná zaujímavá práca so slučkou for súčasne dva počítadlá v cykle.
Zvážte príklad:

Príklad 7: Pomocou skriptu vytlačte nasledujúce páry premenná-hodnota v troch riadkoch: i=0 j=2 i=1 j=3 i=2 j=4


✍ Riešenie:
  • Zorganizujte dva počítadlá v slučke for: počítadlo i na výstup sekvencie 0 1 2 , počítadlo j na výstup sekvencie 2 3 4 :
  • 1 2 3 pre (i = 0, j = 2; i< 10 , j< 5 ; i++, j++ ) { }

    for(i=0, j=2; i<10, j<5; i++, j++) { }

    Každý z troch parametrov cyklu for má teraz dve hodnoty, ktoré sú uvedené oddelené čiarkami(napríklad prvý parameter s dvoma hodnotami: i=0, j=2). Samotné parametre sú uvedené cez bodkočiarku(;).

  • Pre výstup z každého riadku použite značku
    :
  • 1 2 3 4 pre (i = 0, j = 2; i< 10 , j< 5 ; i++, j++ ) { document.write ("
    i=", i, "j=", j) ;)

    for(i=0, j=2; i<10, j<5; i++, j++) { document.write("
    i=", i, "j=",j); )

Generovanie stránky „za behu“: ako to je?

Pred vykonaním ďalšej úlohy zvážte príklad dynamické vytváranie html stránky pomocou javascriptu.

Príklad 8:

  • Potreba dynamicky generovať zoznamy s odrážkami a číslovanie na webovej stránke na základe vstupu používateľa: požiadajte používateľa, aby vstúpil zobrazenie zoznamu(číslované (číslo 1) alebo s odrážkami (číslo 2)) a potom počet položiek zoznamu.
  • V závislosti od odpovede zobrazte značky buď odrážkového alebo číslovaného zoznamu s požadovaným počtom položiek.
  • Ak je zadaný neexistujúci typ zoznamu, vypíšte správu "Zadajte správny typ!" a ukončite program ().

Pripomeňme si značky:
značky číslovaného zoznamu:

<ol > <li > <li > <li > </ol>

značky zoznamu s odrážkami:

var listType=prompt("Zadajte "1" pre zoznam s odrážkami, "2" pre číslovaný zoznam");

  • Skontrolujte zadanú hodnotu: pre očíslovaný zoznam (číslo 1) vytlačte štítok
      , pre označené (číslo 2) - tag
        . Ak je zadaná iná hodnota, vytlačte poznámku a ukončite program:

            ") else ( upozornenie("Zadajte správny typ"); ukončite; )

          • Inicializovať premennú Kolvo hodnota zadaná používateľom v modálnom okne:
          • var kolvo=prompt("Zadajte počet bodov");

          • Ak chcete previesť hodnotu reťazca na číselnú hodnotu, použite funkciu parseInt:
          • pre (var i=1; i<=kolvo; i++) document.write("");

          • Keďže zoznamy sú uzavreté vhodnými značkami, výstup uzatváracích značiek závisí od typu zoznamu:
          • if (listType== "1") document.write("" ) else if (listType== "2" ) document.write ("" ) ;

            if (listType=="1") document.write("

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

    1. Otestujte skript v prehliadači.
    2. Úloha Js 3_11.
      Napíšte skript, ktorý zobrazí značky vstup(ovládacie prvky) rôznych typov, v závislosti od zadaného čísla:

      1 - textové pole,
      2 - tlačidlo,
      3 - rádio(prepínač).

      Tiež by ste si mali vyžiadať počet zobrazených značiek.

      Pripomeňme si značky:

      Pre 1 – textové pole: Pre 2 tlačidlo: Pre 3 - rádio:

      Ukážkový výstup:

      Úloha Js 3_12. Nakreslite šachovnicu 9x9 pomocou javascriptu pre slučky. „Kreslenie“ dosky sa riadi html značkami tabuľky:

      Pripomeňme si značky:

      <tabuľka border="1" width="30%"> <tr > <td >-</td> -</td> </tr> </tabuľka>

      --

      • Ak chcete nakresliť 9 riadkov, musíte zorganizovať vonkajšiu slučku for s počítadlom i .
      • Ak chcete nakresliť 9 buniek v každom riadku, musíte zorganizovať vnútornú (vnorenú) slučku for s počítadlom j .
      • Ak chcete nakresliť značky buniek a riadkov, použite metódu document.write.

      výsledok:

      Okrem toho:

      1. Zobrazte tabuľku násobenia v bunkách tabuľky pomocou počítadiel slučiek (i a j).
      2. Zobrazte prvý riadok a prvý stĺpec s červeným pozadím (atribút bunky tabuľky bgcolor):
        <tdbgcolor="red">-</td>

        -

      výsledok:


      Otázky na sebaovládanie:

      1. Vysvetlite, čo znamená pojem „dynamické vytváranie stránok“?
      2. Aký jazykový konštrukt sa najčastejšie používa pri dynamickom vytváraní stránky?

      Príkazy slučky v jazyku JavaScript - While

      Syntax príkazu while je:

      while (podmienka) ( //..blok príkazu.. );

      Príklad: Zobraziť v dialógovom okne mocniny od dvoch do 1000 (2, 4, 8...512). Použite metódu alert().


      ✍ Riešenie:
      • Zoznam skriptov:
      • 1 2 3 4 5 var a = 1; zatiaľ čo (a< 1000 ) { a*= 2 ; alert(a) ; }

        var a = 1; zatiaľ čo (a< 1000){ a*=2; alert(a); }

        a*=2 → používa sa zložená operácia priradenia: súčin spojený s priradením, t.j. rovnaké ako a = a*2

      • Otestujte výsledok v prehliadači.

      Ako fungujú príkazy break a continue v slučke while?

      Príklad:

      var a = 1; zatiaľ čo (a< 1000 ) { a*= 2 ; if (a== 64 ) continue ; if (a== 256 ) break ; alert(a) ; }

      var a = 1; zatiaľ čo (a< 1000){ a*=2; if (a==64) continue; if (a==256) break; alert(a); }

      Zobrazia sa mocniny dvoch až do 128 vrátane a hodnotu 64 budú preskočené. Tie. v dialógových oknách uvidíme: 2 4 8 16 32 128

      Úloha Js 3_13. Aké hodnoty vygeneruje nasledujúci útržok kódu?

      var counter = 5; zatiaľ čo (počítadlo< 10) { counter++; document.write("Counter " + counter); break; document.write("Эта строка не выполнится."); }


      Úloha Js 3_14. Napíšte stavebný kód X do istej miery r pomocou while slučky. Dopytujte na hodnoty premenných a zobrazte výsledok pomocou alert() .

      Pridať kód:

      1 2 3 4 5 6 7 8 9 var x = ...; meniť = ...; počítadlo = 1; číslo = x; while (...) ( chislo= x* ...; counter= ...; ) alert(chislo) ;

      var x = ...; meniť = ...; počítadlo = 1; číslo=x; while (...)( chislo=x*...; counter=...; ) alert(chislo);

      A Opravte chybu v programe navrhnutom na nájdenie faktoriálu čísla:

      1 2 3 4 5 6 7 8 9 10 11 12 13 var counter = prompt("Zadajte cislo" ) ; var faktoriál = 1 ; document.write( "Číselný faktor: "+ počítadlo + "!=" ); do ( if (počítadlo == 0 ) ( faktoriál = 1 ; zlom ; ) faktoriál = faktoriál / počítadlo; počítadlo = počítadlo + 1 ; ) while (počítadlo > 0 ) ; dokument.písať (faktoriálne) ;

      var counter = prompt("Zadajte číslo"); var faktoriál = 1; document.write("Faktoriál čísla: " + počítadlo + "! = "); do ( if (počítadlo == 0) ( faktoriál = 1; zlom; ) faktoriál = faktoriál / počítadlo; počítadlo = počítadlo + 1; ) while (počítadlo > 0); dokument.zapis(faktoriálne);


      Úloha Js 3_16. Upravte program pre vstup používateľa:

      Vyzývať na zadanie používateľského mena, kým používateľ skutočne nezadá používateľské meno (t. j. pole je skutočne vyplnené a nestlačí sa tlačidlo Zrušiť). Keď je zadaný názov, potom výstup "Ahoj meno!". dokument.

      Ako nájsť chyby v javascripte?

      V niektorých prípadoch kód na stránke z neznámeho dôvodu nefunguje. Kde hľadať chybu? V takýchto prípadoch môžete použiť príkaz try..catch.

      Príkaz try..catch sa pokúša vykonať časť kódu a ak je v kóde chyba, je možné túto chybu zobraziť na obrazovke.
      Chyba je uložená v objekte e.message.

      Zvážte fungovanie operátora na príklade:

      Príklad: napíšte operátor s chybou v programe. Skontrolujte, či v údajnom chybnom kóde nie je chyba: ak je v kóde chyba, vypíšte správu "spracovanie chýb: názov chyby". Po skontrolovaní chybného výpisu, bez ohľadu na to, či je chyba v kóde, vypíšte správu "dokončovacie kroky"


      ✍ Riešenie:
      • Ako chybové hlásenie použijeme metódu prompt() napísanú s chybou - promt(). Uzavrite chybové hlásenie do bloku try:
      • upozornenie ("pred"); try ( promt("zadajte číslo"); // príkaz s chybou )

        Skúste z angličtiny. - "try", teda príkaz try vložíme pred fragment kódu, ktorý môže obsahovať chybu (v našom prípade je to naozaj chyba).

      • Chybové hlásenie by sa malo umiestniť do bloku catch:
      • 6 7 8 9 chytiť (e) ( upozornenie ( "spracovanie chýb: "+e.správa); )

        catch(e) ( alert("error handling: "+e.message); )

        Ak naozaj dôjde k chybe, potom príkaz catch (z anglického „to catch“) uloží túto chybu do objektu e. V budúcnosti sa môže zobraziť v dialógovom okne - e.správa .

      • Vložte poslednú správu, ktorú chcete zobraziť bez ohľadu na to, či je v kóde chyba, vložte ju do bloku konečne:
      • nakoniec ( alert("dokončovacie akcie"); ) alert("po");

        Ak aj napriek tomu dôjde k chybe, tak interpret po jej výstupe v našom príklade prejde na vykonanie bloku catch a následne (z anglického „completion“, „finally“), ktorý sa vykoná vždy bez ohľadu na či došlo k chybe alebo nie. Aj keby došlo k chybe v bloku catch.

      Dôležité: Posledný blok v konštrukte je voliteľný.


      Úloha Js 3_17. Spustite vyššie uvedený príklad s nasledujúcimi úpravami:

    3. Odstráňte posledný blok a sledujte spustenie kódu.
    4. Vymeňte chybový operátor za bezchybný a uvidíte, aký bude výsledok.
    5. Zhrnutie:

      Lekcia zahŕňala nasledujúce operátory a konštrukcie jazyka JavaScript:

      Podmienené príkazy JavaScriptu:

    6. ak vyhlásenie
    7. Podmienené priradenie (ternárny operátor)
    8. príkaz prepnúť
    9. Príkazy cyklu:

    10. pre slučku
    11. pričom slučka
    12. do...pri slučke
    13. pre...v slučke
    14. Záverečná úloha Js 3_18.
      Vytvorte hru pre dvoch:

      1. Program požiada prvého hráča, aby zadal číslo z 1 predtým 100 (druhý hráč nevidí zadané číslo). Potom je druhý hráč požiadaný, aby uhádol zadané číslo. Odpoveďou je správa "málo" alebo "veľa" v závislosti od zadanej odpovede. Ak hráč uhádne správne, zobrazí sa mu gratulácia. Ak neuhádne, hra pokračuje (kým sa číslo skutočne neuhádne).
      2. Vypočítajte počet pokusov a po uhádnutí čísla vráťte výsledok.


      Otázky na sebaovládanie:

      1. Kedy je vhodné použiť slučku For In? Uveďte príklad jeho použitia.
      2. Aký je účel príkazu try..catch?
      3. Vysvetlite účel každého bloku príkazu try..catch.

      V každodennom živote je často potrebné urobiť nejaké rozhodnutie v závislosti od nejaké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.

      V programovaní je to tiež veľmi bežné. Na toto existujú dva podmienené príkazy, sú to if-else a switch-case. V tomto článku vám poviem o príkaze 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 nastane nasledujúca podmienka if(peniaze > 50000)( 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 zobrazila nasledujúca správa: „Nie je dosť 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 bola podmienka v tomto prípade pravdivá, treba napísať znamienko väčšie alebo rovné ( >=).

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

      pomocou kučeravých zátvoriek

      Ak existuje iba jeden príkaz, zložené zátvorky sú voliteľné, ak je v bloku viac ako jeden príkaz, zložené zátvorky sú povinné.

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

      Vnútri, ak môžete písať akékoľvek 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, potom 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");

      if-else if-else vyhlásenie

      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 bude fungovať jeden alebo druhý 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, potom bude fungovať druhý blok kódu a ak má zásuvka inú hodnotu (aj záporné číslo), bude fungovať tretí blok kódu.

      Skrátka ako inak

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


      Ak je napríklad 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“, v opačnom prípade 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

      "; //Výsledok odošle document.write(x);

      To je všetko, čo som vám chcel v tomto článku povedať. Podmienený príkaz if-else sa používa viac ako v každom skripte, preto je veľmi dôležité ho poznať a pochopiť. V ďalšom článku vám poviem o ďalšom podmienenom príkaze switch-case.

      V tomto príklade najskôr deklarujeme štyri premenné pomocou kľúčového slova var a okamžite im priradíme číselné hodnoty. Ďalej pomocou operátorov prírastku a znižovania zmeníme hodnoty čísel. Informácie sa zobrazujú pomocou funkcie ozvena(pozri článok „“). Aby som nepísal názov objektu ešte raz, použil som konštrukciu s ().

      Logické operátory

      Pri kontrole podmienky sa používajú logické operátory, aby sa neopakovali, urobím skratku: ľavý operand je L.O., a pravý operand je P.O.

      • && - boolovské "AND"
      • || - "ALEBO"
      • ! - "NIE"
      • > - L.O. viac P.O.
      • >= - L.O. väčšie alebo rovné P.O.
      • < - Л.О. меньше П.О.
      • <= - Л.О. меньше или равен П.О.
      • == - L.O. rovná sa P.O.
      • != - L.O. nerovná sa P.O.
      • |= - L.O. rovná sa ALEBO P.O.
      • &= - L.O. je rovný sám sebe A P.O.
      • ^= - EXKLUZÍVNE ALEBO

      Teraz zvážte nasledujúci skript:

      //***************************************** // logické operácie// logic_if_else.js //***************************************** var a= 10, b= 100, WshShell, názov, msg1, msg2, msg3, msg4, vbInformation = 64 ; // Vytvorenie inštancie triedy WScript.Shell WshShell = WScript.CreateObject("WScript.Shell" ); titul = "Práca s podmieneným príkazom IF ELSE JS"; with(WshShell) ( ak (a>= 5 && a<= 100 ) //истина msg1 = "TRUE" ; else msg1 = "FALSE" ; Popup (msg1, 5 , title, vbInformation) ; if (a>= 5 || b== 100 ) //true msg2 = "PRAVDA" ; else msg2 = "FALSE" ; Popup (msg2, 5 , title, vbInformation) ; //podmienený príkaz js, ak je to inak if (! a) //false msg3 = "PRAVDA" ; else msg3 = "FALSE" ; Popup (msg3, 5 , title, vbInformation) ; if (a&= 100 ) //false msg4 = "PRAVDA" ; else msg4 = "FALSE" ; Popup (msg4, 5 , title, vbInformation) ; )

      Rovnako ako v predchádzajúcom skripte, aj tu som použil konštrukciu s na skrátenie kódu. Na zobrazenie informácií sme však použili funkciu objaviť sa(pozri článok „“). V dôsledku toho sa dialógové okná po niekoľkých sekundách automaticky zatvoria. Všimnite si, že sme v tomto príklade nepoužili zložené zátvorky. v podmienenom príkaze js if sú relevantné iba vtedy, keď potrebujete spustiť nie jeden riadok kódu, ale niekoľko.

      Nakoniec sa pozrime na taký praktický príklad, akým je riešenie kvadratickej rovnice:

      // Riešenie kvadratickej rovnice// uravnenije_if_else.js // *********************************************************** var a, b, c, d, x, x1, x2; //Deklarovanie premenných a = -2; b = 6; c = 20; //Hľadá sa diskriminant d = Matematika .pow (b, 2) - 4* a* c; if (d== 0) (x= b/ (2* a); msg= "Rovnica má jedno riešenie, x je presne"+ x ) else ( if (d> 0 ) ( x1= (- b+ Matematika .sqrt (d) ) / (2 * a) ; x2= (- b- Matematika .sqrt (d) ) / (2 * a) msg= "Rovnica má dve riešenia \n x1 presne"+ x1 + " \n x2 presne "+x2; // podmienený príkaz if else js) else msg= "Žiadne riešenie" ; ) WScript.Echo (msg) ;