Šiame pavyzdyje išmoksite rašyti „JavaScript“ programą, kuri atliks funkcijų perkrovimą.
Norėdami suprasti šį pavyzdį, turite žinoti šias „JavaScript“ programavimo temas:
- „JavaScript“, jei… kitas pareiškimas
- „JavaScript Switch“ pareiškimas
- „JavaScript“ funkcijos ir funkcijos išraiškos
Programuojant funkcijų perkrova reiškia sąvoką, kai kelios funkcijos su tais pačiais pavadinimais gali būti skirtingai įgyvendinamos. Tačiau, jei „JavaScript“ yra kelios funkcijos tuo pačiu pavadinimu, bus vykdoma funkcija, kuri apibrėžta paskutiniuoju.
Funkcijos perkrovos funkciją galima įgyvendinti kitais būdais.
1 pavyzdys: teiginio if / else-if naudojimas
// 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);
Rezultatas
Nepateikėte nė vieno argumento Pateikite bent du argumentus 14 45
Pirmiau pateiktoje programoje perkrovos funkcija vykdoma naudojant if/else… if
teiginį.
- „Java“ sistemoje
arguments
objektas automatiškai pasiekiamas funkcijoje, kuri atspindi perduotus funkcijos argumentus. - Kelios sąlygos yra skirtos veiksmams atlikti pagal tą konkrečią sąlygą.
2 pavyzdys: jungiklio teiginio naudojimas
// 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);
Rezultatas
Nepateikėte nė vieno argumento Pateikite bent du argumentus 14 45
Pirmiau pateiktoje programoje switch
sakinys naudojamas funkcijų perkrovos funkcijoms atlikti. Skirtingos sąlygos lemia skirtingus veiksmus.