⊗jsPmFNOIP 250 of 505 menu

A külső és belső függvények paraméterei JavaScriptben

Tegyük úgy, hogy mind a külső függvény, mind a belső fogadjon paramétereket:

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

Adjuk át a külső függvény paraméterét a belső függvény hívásakor:

function test(num) { function func(localNum) { console.log(localNum); // kiírja 1-et } func(num); //!! átadjuk a paramétert } test(1); // számot adunk át paraméterként

Így a belső függvényben hozzáférhető lesz a num változó, mint a szülőfüggvény külső változója, és a localNum változó, ami a belső függvény lokális változója.

Mindkét változó értéke ugyanaz lesz:

function test(num) { function func(localNum) { console.log(num); // kiírja 1-et console.log(localNum); // kiírja 1-et } func(num); } test(1);

A köztük lévő különbség a következő: ha a belső függvényben megváltoztatjuk a num változót - az a külső függvényben is megváltozik:

function test(num) { function func(localNum) { num = 2; // megváltoztatjuk a num változót } func(num); // átadjuk a paramétert console.log(num); // kiírja 2-t } test(1); // számot adunk át paraméterként

A localNum változó viszont lokális lesz. Annak megváltoztatása nem fog változást eredményezni a külső függvényben. Maga a localNum változó sem lesz látható a belső függvényen kívül:

function test(num) { function func(localNum) { localNum = 2; // megváltoztatjuk a num változót } func(num); // átadjuk a paramétert } test(1); // számot adunk át paraméterként

Határozd meg, kód futtatása nélkül, hogy mi jelenik meg a konzolon:

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

Határozd meg, kód futtatása nélkül, hogy mi jelenik meg a konzolon:

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

Határozd meg, kód futtatása nélkül, hogy mi jelenik meg a konzolon:

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

Határozd meg, kód futtatása nélkül, hogy mi jelenik meg a konzolon:

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

Határozd meg, kód futtatása nélkül, hogy mi jelenik meg a konzolon:

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

Határozd meg, kód futtatása nélkül, hogy mi jelenik meg a konzolon:

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