⊗jsPmFNOIP 250 of 505 menu

Parametre vonkajšej a vnútornej funkcie v JavaScripte

Urobme to tak, aby aj vonkajšia funkcia aj vnútorná prijímali parametre:

function test(num) { function func(localNum) { console.log(localNum); } }

Odovzdajme parameter vonkajšej funkcie do volania vnútornej funkcie:

function test(num) { function func(localNum) { console.log(localNum); // vypíše 1 } func(num); //!! odovzdávame parameter } test(1); // odovzdávame parameter číslo

Vychádza to tak, že vo vnútornej funkcii bude dostupná premenná num ako vonkajšia premenná z nadradenej funkcie a premenná localNum, ktorá je lokálnou premennou vnútornej funkcie.

Obe tieto premenné budú mať rovnaké hodnoty:

function test(num) { function func(localNum) { console.log(num); // vypíše 1 console.log(localNum); // vypíše 1 } func(num); } test(1);

Rozdiel medzi nimi bude v nasledovnom: ak vo vnútornej funkcii zmeníme premennú num - zmení sa aj vo vonkajšej funkcii:

function test(num) { function func(localNum) { num = 2; // meníme premennú num } func(num); // odovzdávame parameter console.log(num); // vypíše 2 } test(1); // odovzdávame parameter číslo

A premenná localNum bude lokálna. Jej zmeny nebudú viesť k žiadnym zmenám vo vonkajšej funkcii. A ani samotná premenná localNum nebude viditeľná z vonku vnútornej funkcie:

function test(num) { function func(localNum) { localNum = 2; // meníme premennú num } func(num); // odovzdávame parameter } test(1); // odovzdávame parameter číslo

Určite, bez spustenia kódu, čo sa vypíše do konzoly:

function test(num) { function func(localNum) { console.log(localNum); } func(num); } test(1);

Určite, bez spustenia kódu, čo sa vypíše do konzoly:

function test(num) { function func(localNum) { console.log(localNum); } func(num + 1); } test(1);

Určite, bez spustenia kódu, čo sa vypíše do konzoly:

function test(num) { function func(localNum) { console.log(num); } func(num + 1); } test(1);

Určite, bez spustenia kódu, čo sa vypíše do konzoly:

function test(num) { function func(localNum) { localNum = 2; } func(num); console.log(num); } test(1);

Určite, bez spustenia kódu, čo sa vypíše do konzoly:

function test(num) { function func(localNum) { localNum = 2; } func(num); console.log(localNum); } test(1);

Určite, bez spustenia kódu, čo sa vypíše do konzoly:

function test(num) { function func(localNum) { num = 2; } func(num); console.log(num); } test(1);
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť