Slovník | Vyhledávání | Mapa webu
 
Základy informatiky pro biologyAlgoritmizace a programování Programování v JavaScriptu - II Funkce Argumenty funkcí

Logo Matematická biologie

Argumenty funkcí

Všechny argumenty funkcí jsou v JavaScriptu nepovinné a nelze nijak zajistit, aby povinné byly. Na jednu stranu to může být dobré, na druhou zase moc ne. Parametry deklarované při definici funkce jsou jen formální a slouží hlavně k tomu, abychom se na ně ve funkci mohli odkazovat jménem.

Jinak je v každé funkci totiž přítomen objekt arguments, který obsahuje pod číselnými indexy všechny argumenty funkci předané (první argument je na indexu 0). Můžeme říct, že je to něco jako pole, ale pole samotné (objekt Array) to není. Nad arguments i přesto, že obsahuje vlastnost length jako pole, nemůžeme volat metody pole.

var sum = function () {
    var i, sum = 0;
    for (i = 0; i < arguments.length; ++i) {
        sum += arguments[i];
    }
    return sum;
};
sum(1, 2, 3, 4, 5); // 15

Pokud by jsme chtěli zajistit aritu funkce, tj. aby vyžadovala konkrétní počet argumentů, musíme to ošetřit sami například tímto spůsobem:

function pair(x, y) {
    if (arguments.length !== 2) {
        throw new Error('Need exactly 2 arguments');
    }
    ...
}

 
vytvořil Institut biostatistiky a analýz Masarykovy univerzity | | zpětné odkazy | validní XHTML 1.0 Strict