Variablat globale dhe parametrat e funksioneve në JavaScript
Le të themi se kemi një funksion që pranon një numër si parametër:
function func(localNum) {
console.log(localNum);
}
Le të themi se jashtë funksionit ekziston një variabël num:
function func(localNum) {
console.log(localNum);
}
let num = 1; // variabël globale e jashtme
Le ta thirrim funksionin tonë, duke i kaluar
variablin num si parametër:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num); // therrasim funksionin me parametër, do të shfaqë 1
Kjo do të thotë se brenda funksionit do të jenë të disponueshme
si variabla localNum (parametri
i funksionit), ashtu edhe variabla num (si
variabël e jashtme):
function func(localNum) {
console.log(num); // do të shfaqë 1
console.log(localNum); // do të shfaqë 1
}
let num = 1;
func(num);
Vetë variabla localNum do të jetë variabël
lokale e funksionit dhe nuk do të jetë e disponueshme nga jashtë:
function func(localNum) {
}
let num = 1;
func(num); // therrasim funksionin me parametër
console.log(localNum); // do të japë gabim
Meqenëse variabla localNum është lokale,
asnjë ndryshim me të nuk do të ndryshojë asgjë
jashtë:
function func(localNum) {
localNum = 2; // nuk ndryshon asgjë jashtë
}
let num = 1;
func(num);
Nëse ndryshojmë variablin num brenda (globalen),
atëherë ndryshimet do të shfaqen edhe jashtë:
function func(localNum) {
num = 2;
}
let num = 1;
func(num);
console.log(num); // do të shfaqë 2
Sidoqoftë, nëse brenda funksionit deklarojmë
variablin num përmes let, atëherë
do të krijojmë në këtë mënyrë një variabël lokale
num, që nuk ndikon në asnjë mënyrë në variablin e jashtëm:
function func(localNum) {
let num = 2; // të deklarojmë përmes let
}
let num = 1;
func(num);
console.log(num); // do të shfaqë 1 - asgjë nuk ndryshoi
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function func(localNum) {
console.log(localNum);
}
func(1);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num);
num = 2;
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
let num = 1;
function func(localNum) {
console.log(localNum);
}
num = 2;
func(num);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function func(localNum) {
localNum = 2;
}
let num = 1;
func(num);
console.log(num);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function func(localNum) {
num = 2;
}
let num = 1;
func(num);
console.log(num);
Përcaktoni, pa ekzekutuar kodin, çfarë do të shfaqet në konsol:
function func(localNum) {
let num = 2;
}
let num = 1;
func(num);
console.log(num);