JavaScript/Juandev/W3Schools: Porovnání verzí

Smazaný obsah Přidaný obsah
Juandev (diskuse | příspěvky)
Juandev (diskuse | příspěvky)
→‎Hodina 9: část hotova
Řádek 172:
 
== Hodina 9 ==
*dnes o podmínkových příkazech:
**'''if''' – spustí kód pokud (=''if'') je podmínka ''true''. Takže například vítací skrypt: <source lang="javascript">var d = new Date();</source><source lang="javascript">var time = d.getHours();</source><source lang="javascript">if (time < 8) { document.write("Dobré ráno!"); }</source> Čili vytvářím proměnnou „d“, kde „Date“ je objekt. Další proměnnou je „time“, který definuji jako objekt proměnné „d“ a používám metodu „getHours()“ pro získání aktuální hodiny číslem. Samozřejmě, jelikož je JavaScript jazyk operující ve vyhledávači '''je to lokální čas počítače''', nikoliv čas na severu. Následně dám podmínku, že proměnná „time“ musí být '''menší než 8'''. Pokud tato podmínka nastane, můžu uživatele přivítat hláškou '''„Dobré ráno“!''' Je třeba si ale také uvědomit, že tento skrypt bere v potaz jen celé hodiny. Čili pokud chci dostat do hry minuty musím použít metodu '''getMinutes()'''. Něco složitějšího: <source lang="javascript">var d = new Date();</source><source lang="javascript">var time = d.getHours();</source><source lang="javascript">var minute = d.getMinutes();</source><source lang="javascript">if (time > 4 && time <= 8 ) { document.write("Dobré ráno!"); }</source><source lang="javascript">if (time > 8 && time <= 11 ) { document.write("Dobrý den! "); }</source><source lang="javascript">if (time >= 11 && time <= 14 ) { document.write("Dobrou chuť!"); }</source><source lang="javascript">if (time == 15 && minute <= 30 ) { document.write("Po jídle siesta:-)"); }</source> Čili tady vidíme takový dlouhý skrypt s několikanásobným použitím podmínkového příkazu '''if'''. Je třeba si všimnout několika věcí. Jednat jsou zde vymezeny určité rozsahy. To znamená „(time > 4 && time <= 8 )“ znamená, že se berou v potaz všechny hodniny větší než 4 a všechny hodiny menší nebo rovné 8. Je to tedy průnik čísel 5, 6, 7, 8, 9, 10 atd. a čísel 8, 7, 6, 5, 4, 3 atd. Což dává '''5, 6, 7, 8'''. Neřeší se zde minuty. Čili když máme '''7:27''', tak to hlásí „Dobré ráno!“ protože je to v průniku '''7'''. A stejně tak 8:00 a 8:57 stále hlásí „Dobré ráno!“ Čili „8:59“ je stále „Dobré ráno!“, kdežto „9:00“ je již „Dobrý den“! Což definuje druhá podmínka. Dále si můžeme povšimnout, že 2. a 3. podmínka se časově překrývají. Proto je v textu za „Dobrý den! “ mezera. Protože v čase od 11:00 do 11:59 se bude zobrazovat „Dobrý den! Dobrou chuť!“ Poslední podmínka pak ukazuje způsob nasazení minut. To znamená, opět hledám průnik dvou proměnných: ''time'' je ''15'', tzn. ''15:00–15:59'' a ''minute'' je ''30–0''. Čili tato podmínka je platná v rozsahu '''15:00–15:30'''. Na závěr jednoduchý skryptík z minulé hodiny: <source lang="javascript">var x = 5;</source><source lang="javascript">if (x === 5) { alert("True")};</source>
**'''if'''…'''else''' – '''pokud''' ('''=if''') je hodnota ''true'', spustí se kód, '''jinak''' ('''=else''') se spustí jiný kód: <source lang="javascript">var d = new Date();</source><source lang="javascript">var time = d.getHours();</source><source lang="javascript">if (time < 8) { document.write("Dobré ráno!"); }</source><source lang="javascript">else { document.write("Dobrý den!"); }</source> Tento skrypt Vám přeje podle času „Dobrý den!“, nebo „Dobré ráno“! Je z něj jasně vidět, že pokud je '''7:59-->0:00''' tak se přeje „Dobré ráno!“ a pokud je '''8:00-->23:59''' tak se přeje „Dobrý den“! Čili je to jen ukázka, jinak by se to muselo více rozparcelovat.
**'''if'''…'''else''' '''if'''…'''else'''
<!--var d = new Date();
var time = d.getHours();
if (time<8) { document.write("Dobré ráno!"); }
else if (time>=8 && time<18) { document.write("Dobrý den!"); }
else { document.write("Uááá, kdo mě to budí?!"); }--> Pokračování příště--[[Uživatel:Juan de Vojníkov|Juan de Vojníkov]] 22. 1. 2010, 12:11 (UTC)
 
== Poznámky ==