Funkce je kousek skriptu, který můžeme opakovaně vyvolávat. Funkce nám šetří čas a námahu. Funkci definujeme klíčovým slovem function
, zpravidla následovaným názvem funkce a kulatými závorkymi s volitelnými parametry funkce.
Vlastní příkazy, které se mají v rámci funkce provést (tělo funkce) se vkládají do složených závorek.
function nazevFunkce() { //tělo funkce }
Funkce bez parametru: je již zmíněná funkce nazevFunkce(), která nemá uvnitř závorek žádný parametr.
Parametry předávané funkci se zadávají do kulatých závorek za název funkce. Zde je příklad s definicemi parametru:
function nazevFunkce(parametr, parametr1) { //tělo funkce, které zadáváme parametry }
Volání funkce je velmi snadné:
nazevFunkce(hodnota, hodnota1);
Jako parametry v definici funkce ve většině případů vystupují proměnné, jejichž názvy by neměly být shodné s názvy proměnných použitých při volání funkcí. Schválně jsem zde zmínil "neměly", protože neexistuje jiný důvod, proč by v názvy proměnných nemohly být stejné jako v definici funkce.
Více o volání funkcí: při volání funkcí se většinou předávají nějaké parametry anebo se přinejmenší volají funkce bez uvádění jakých koliv parametrů.
var funkce = objednavka(tap, mnozstvi); var funkce = objednavka();
Po dokončení kódu v těle funkce se nám může vrátit tzv. návratová hodnota. Jednoduchý příklad návratové hodnoty:
function vynasob(x) { return x * 2; }
var cislo = 20; var vysledek = vynasob(cislo); alert(vysledek);
Tento příklad ukazuje vytvoření funkce s názvem vynasob, kde se požadovaný vstupní parametr v tomto případě cislo vynásobí vrátí se prametr vynásobený dvěma.
Funkce nemusí být vždy tak formálně napsána jako jsme si kukazovali výše v příkladech. Anonymní funkce není označována žádným vlastním názvem a zpravidla se k ní přistupuje prostřednictvím proměnné, takto:
var deleni = function (prvniCislo, druheCislo) { return prvniCislo/druheCislo; }