Domov Výpisy Premenné Dialógové okná Tlačidlá .Podmienky a vetvenie Cyklus Funkcie Objekty Objekt Array Objekty tvorené užívateľom Objekt Date Objekt Math Formuláre Objekty formulárov Ďalšie objekty formulára Obrázky Obrázky-2 Stavový riadok Popis v stavovom riadku Animovaný text Hodiny Skladačka Linky | |
5.Podmienky a vetvenie
Jedným z najdôležitejších programovacích príkazov je podmienka, ktorá testuje určitý vzťah medzi dvomi hodnotami. Aj v Javascripte používame pri podmienke rezervované slová if ...else. Za rezervovaným
slovom If je uvedená podmienka v okrúhlych zátvorkách. Ak podmienka je splnená, vykoná sa časť nasledujúca bezprostredne za ňou (príkaz1), v prípade nesplnenia sa vykoná časť uvedená za else
(príkaz2). Táto môže aj chýbať (neúplný podmienený príkaz).
Syntax:
if (podmienka) { príkaz1 } else { príkaz2 }
- V našom príklade sme použili dialógové okná s výzvou prompt - vkladáme dve čísla, ktoré uložíme do premenných x, y a tieto porovnáme pomocou podmienky if ... else.
- Podmienku za if vkladáme do okrúhlych zátvoriek.()
- Pokiaľ je príkazov za niektorou časťou viac, tieto uzavrieme do zložených zátvoriek {} - napr.:
if (x>y) {document.write("<br> prvé číslo je "+x);
document.write("<br> druhé číslo je "+y);
document.write("<br>"+x+"je väčšie ako"+y);
}
- Značka <br> je použitá značka HTML jazyka na odriadkovanie výpisu
|
<body> <script language="javascript">
x=prompt("zadaj prvé číslo","1.číslo")
y=prompt("zadaj druhé cislo","2.číslo")
if (x>y) document.write("prvé číslo je väčšie ako druhé")
else document.write ("prvé číslo je menšie alebo rovné druhému")
</script>
|
Je možný aj skrátený zápis :
(x>y)? document.write("x je väčšie ako y"):document.write(" x nie je väčšie ako y");
- v uvedenom príklade sa skrátený zápis použil aj s dosadením za premennú a - pri zvolených hodnotách sa objaví dialógové okno s hlásením "ano", pri zvolení menšieho x a
väčšieho y sa objaví "nie"
- podmienen0 príkazy možno vnárať do seba - napr.: if (x==y) {(x==z){document.write("x je rovné y a rovné z")}} - vyjadruje: ak x rovná sa y, potom ak x rovná sa z, tak napíš
"x je rovné x a rovné z"
|
<script language="javascript">
var a
x=10;
y=3;
a=(x>y)? "ano":"nie";
alert(a);
</script>
|
Ak potrebujeme použiť vetvenie programu na viacero častí použijeme prepínač Switch() s možnosťami
case 1:
vetva1;
break;
case 2:
vetva 2;
break;
.
.
.
default:
iná možnosť;
V uvedenom príklade sme použili vkladanie hodnôt "1", "2", "3", resp. inú hodnotu, ktorú vypíšeme
Rezervované slovo break zabezpečí, že sa ďalšie možnosti preskočia.
|
<body><script language="javascript">
var a
a=prompt("zadaj hodnotu 1,2,3","napíš číslo!");
switch (a){
case "1":
alert("vložili ste 1");
break;
case "2":
alert("vložili ste 2");
break;
case "3":
alert("vložili ste 3");
break;
default:
alert("nezadali ste správnu hodnotu, Vaša hodnota je "+a);
}
</script>
</body>
|
Vyskúšajte sa:
Úlohy:
- Napíšte program, ktorý si vyžiada dve hodnoty a, b a vypíše ich v
poradí menšie "<" väčšie.
- Napíšte program na zadanie mena návštevníka. V prípade, ak
meno nie je zadané, upozorní ho správou, v opačnom ho pozdraví menom
- Napíšte program, ktorý zistí, či v danej adrese nechýba znak
" @"
Riešenie
|
späť |