JavaScript není Java. Nenechte se zmást tím názvem. Většina syntaxí a konvence psaní kódu není stejná.
budeme se učit:
syntax, data types, variables
strings, arrays, objects, methods
loops, conditionals, functions
DOM, Events, Form validation
Browser API, AJAX...
JavaScript v prohlížeči - jak ho použít
v konzoli - hlavně pro manuální testování přes výstupy a ladění chyb
vkládáním skriptu do HTML - tím se skript spustí při načtení stránky
způsoby
inline - do určitých atributů, např. onclick="..." - není povoleno ve studentských pracích
head - do tagu <script> v headu - není povoleno ve studentských pracích
body - do tagu <script> v body - není povoleno ve studentských pracích
external - odkaz na JS soubor pomocí tagu <script src="...">, který se dává na konci tagu <body>
příklad:
// soubor ./js/main.js <-- tenhle řádek je komentářconsole.log('Ahoj světe');// vypsat Ahoj světe na konzoli/* příklad manipulace s elementem na stránce */constheadingElement=document.querySelector('h1');// vybrat existující element ze stránky a uložit do proměnnéconstnewText='barrack obama rulez';// vytvořit text a uložit do proměnnéheadingElement.innerText=newText;// vytvořený text zobrazit v elementu/* příklad vytvoření elementu s funkcí */constsayHello=()=>{// definovat funkci a uložit do proměnnéconsole.log('Hello');};constbuttonSayHello=document.createElement('button');// vytvořit element button a uložit do proměnnébuttonSayHello.innerText='Say Hello';// nastavit text v elementu buttonbuttonSayHello.addEventListener('click',sayHello);// nastavit událost click, která spustí funkci sayHello/* příklad umístění nově vytvořeného elementu na stránku */constbody=document.querySelector('body');// vybrat element pro umístění elementu buttonbody.appendChild(buttonSayHello);// umístit element button do vybraného elementu
constperson=undefined;// Lettersconstcar1=undefined;// NumbersconstPEDO_BEAR=undefined;// Underscoreconstgummy_bear=undefined;// Underscoreconst_ember=undefined;// Underscoreconst$computer=undefined;// Dollar SignconstmyFirstVariable=undefined;// camelCase - preferovaný styl v JavaScriptuconstMyAwesomeClass=undefined;// PascalCase - pro třídy a funkční komponenty
vytvořte soubor main.js a nalinkujte ho na stránku index.html
vyzkoušejte si deklaraci všech zmíněných datových typů společně s vytvořením proměnných
pro kontrolu datového typu vypište na konzoli hodnoty všech deklarovaných proměnných včetně názvů jejich typů (pomocí typeof)
vytvořte si funkci, která dokáže vynásobit 3 čísla a, b, a c (pokud to jde) a vrátit výsledek
sepište si sezam alespoň 5 ovocí, zvířat nebo měst, a uložte je do pole pod odpovídající proměnnou
vytvořte si objekt s informacemi o nějakém prodejním artiklu (kniha, auto, mobil, rohlík, ...), tj. bude obsahovat např. následující údaje: název, cena, měna, hmotnost, měrná jednotka, počet skladem, dostupnost, ...
vypište na konzoli výsledek porovnávání dvou číselných hodnot, zda jsou si rovny, nebo jedna je menší/větší než druhá
vypište na konzoli výsledek porovnávání dvou retězcových hodnot
vytvořte funkci, která dokáže vypsat na konzoli smysluplnou oznamovací větu o Vašem jménu, věku, kde a co studujete, přičemž Tyto informace budou předány do parametru této funkce v podobě objektu