⊗jsPmFNOIP 250 of 505 menu

Ārējo un iekšējo funkciju parametri JavaScript

Darīsim tā, lai gan ārējā funkcija gan iekšējā pieņemtu parametrus:

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

Padodam ārējās funkcijas parametru iekšējās funkcijas izsaukumā:

function test(num) { function func(localNum) { console.log(localNum); // izvadīs 1 } func(num); //!! padodam parametru } test(1); // padodam parametru skaitli

Izrādās, ka iekšējā funkcijā būs pieejams mainīgais num kā ārējais mainīgais no vecāka funkcijas un mainīgais localNum, kas ir iekšējās funkcijas lokālais mainīgais.

Abiem šiem mainīgajiem būs vienādas vērtības:

function test(num) { function func(localNum) { console.log(num); // izvadīs 1 console.log(localNum); // izvadīs 1 } func(num); } test(1);

Atšķirība starp tiem būs sekojoša: ja iekšējā funkcijā mainīsiet mainīgo num - tas mainīsies arī ārējā funkcijā:

function test(num) { function func(localNum) { num = 2; // mainām mainīgo num } func(num); // padodam parametru console.log(num); // izvadīs 2 } test(1); // padodam parametru skaitli

Bet mainīgais localNum būs lokāls. Tā izmaiņas neizraisīs nekādas izmaiņas ārējā funkcijā. Un pats mainīgais localNum nebūs redzams ārpus iekšējās funkcijas:

function test(num) { function func(localNum) { localNum = 2; // mainām mainīgo num } func(num); // padodam parametru } test(1); // padodam parametru skaitli

Nosakiet, nepalaist kodu, ko izvadīs konsole:

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

Nosakiet, nepalaist kodu, ko izvadīs konsole:

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

Nosakiet, nepalaist kodu, ko izvadīs konsole:

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

Nosakiet, nepalaist kodu, ko izvadīs konsole:

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

Nosakiet, nepalaist kodu, ko izvadīs konsole:

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

Nosakiet, nepalaist kodu, ko izvadīs konsole:

function test(num) { function func(localNum) { num = 2; } func(num); console.log(num); } test(1);
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt