Parametrat e Funksioneve të Jashtme dhe të Brendshme në JavaScript
Le të bëjmë që edhe funksioni i jashtëm edhe ai i brendshëm të pranojnë parametra:
function test(num) {
function func(localNum) {
console.log(localNum);
}
}
Le ta kalojmë parametrin e funksionit të jashtëm në thirrjen e funksionit të brendshëm:
function test(num) {
function func(localNum) {
console.log(localNum); // do të shfaqë 1
}
func(num); //!! kalojmë parametrin
}
test(1); // kalojmë si parametër një numër
Kjo do të thotë se në funksionin e brendshëm do të
jetë e mundur të përdoret ndryshorja num si një ndryshore
e jashtme nga funksioni prind dhe ndryshorja
localNum, e cila është një ndryshore lokale
e funksionit të brendshëm.
Të dyja këto ndryshore do të kenë të njëjtat vlera:
function test(num) {
function func(localNum) {
console.log(num); // do të shfaqë 1
console.log(localNum); // do të shfaqë 1
}
func(num);
}
test(1);
Ndryshimi midis tyre do të jetë në vijim: nëse
në funksionin e brendshëm ndryshohet ndryshorja
num - ajo do të ndryshojë edhe në funksionin e jashtëm:
function test(num) {
function func(localNum) {
num = 2; // ndryshojmë ndryshoren num
}
func(num); // kalojmë parametrin
console.log(num); // do të shfaqë 2
}
test(1); // kalojmë si parametër një numër
Ndërsa ndryshorja localNum do të jetë lokale.
Ndryshimet e saj nuk do të shkaktojnë ndonjë
ndryshim në funksionin e jashtëm. Dhe vetë
ndryshorja localNum nuk do të jetë e dukshme
jashtë funksionit të brendshëm:
function test(num) {
function func(localNum) {
localNum = 2; // ndryshojmë ndryshoren num
}
func(num); // kalojmë parametrin
}
test(1); // kalojmë si parametër një numër
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function test(num) {
function func(localNum) {
console.log(localNum);
}
func(num);
}
test(1);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function test(num) {
function func(localNum) {
console.log(localNum);
}
func(num + 1);
}
test(1);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function test(num) {
function func(localNum) {
console.log(num);
}
func(num + 1);
}
test(1);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function test(num) {
function func(localNum) {
localNum = 2;
}
func(num);
console.log(num);
}
test(1);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function test(num) {
function func(localNum) {
localNum = 2;
}
func(num);
console.log(localNum);
}
test(1);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function test(num) {
function func(localNum) {
num = 2;
}
func(num);
console.log(num);
}
test(1);