V tomto příkladu se naučíte psát program JavaScript, který provede přetížení funkcí.
Abyste pochopili tento příklad, měli byste znát následující programovací témata JavaScriptu:
- Prohlášení JavaScript, pokud … else
- Prohlášení o přepnutí JavaScriptu
- Funkce a výrazy funkcí JavaScriptu
V programování přetížení funkcí odkazuje na koncept, kde více funkcí se stejnými názvy může mít různé implementace. Pokud však v JavaScriptu existuje více funkcí se stejným názvem, provede se funkce definovaná na poslední.
Funkci přetížení funkce lze implementovat několika dalšími způsoby.
Příklad 1: Použití příkazu if / else-if
// program to perform function overloading function sum() ( // if no argument if (arguments.length == 0) ( console.log('You have not passed any argument'); ) // if only one argument else if (arguments.length == 1) ( console.log('Pass at least two arguments'); ) // multiple arguments else ( let result = 0; let length = arguments.length; for (i = 0; i < length; i++) ( result = result + arguments(i); ) console.log(result); ) ) sum(); sum(5); sum(5, 9); sum(1, 2, 3, 4, 5, 6, 7, 8, 9);
Výstup
Neposlali jste žádný argument Předejte alespoň dva argumenty 14 45
Ve výše uvedeném programu se funkce přetížení provádí pomocí if/else… if
příkazu.
- V JavaScriptu je
arguments
objekt automaticky dostupný uvnitř funkce, která představuje předané argumenty funkci. - Několik podmínek je určeno k provádění akcí založených na dané konkrétní podmínce.
Příklad 2: Použití příkazu switch
// program to perform function overloading function sum() ( switch (arguments.length) ( case 0: console.log('You have not passed any argument'); break; case 1: console.log('Pass at least two arguments'); break; default: let result = 0; let length = arguments.length; for (i = 0; i < length; i++) ( result = result + arguments(i); ) console.log(result); break; ) ) sum(); sum(5); sum(5, 9); sum(1, 2, 3, 4, 5, 6, 7, 8, 9);
Výstup
Neposlali jste žádný argument Předejte alespoň dva argumenty 14 45
Ve výše uvedeném programu se switch
příkaz používá k dosažení funkce přetížení funkce. Různé podmínky vedou k provedení různých akcí.