JavaScript-da global üýtgeýänler we funksiýa parametrleri
Bizde san parametr hökmünde kabul edýän funksiýa bolsun:
function func(localNum) {
console.log(localNum);
}
Funksiýanyň daşynda num üýtgeýäni bolsun:
function func(localNum) {
console.log(localNum);
}
let num = 1; // daşky global üýtgeýän
Öz funksiýamyzy çagyryp, oňa
num üýtgeýänini parametr hökmünde geçireýli:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num); // funksiýany parametr bilen çagyryň, 1 çykarar
Şeýlelikde, funksiýanyň içinde
localNum üýtgeýäni (funksiýanyň parametri)
hem, num üýtgeýäni (daşky üýtgeýän hökmünde)
hem elýeterli bolar:
function func(localNum) {
console.log(num); // 1 çykarar
console.log(localNum); // 1 çykarar
}
let num = 1;
func(num);
localNum üýtgeýäniniň özi funksiýanyň
ýerli üýtgeýäni bolar we daşyndan elýeterli bolmaz:
function func(localNum) {
}
let num = 1;
func(num); // funksiýany parametr bilen çagyryň
console.log(localNum); // ýalňyşlyk berer
localNum üýtgeýäni ýerli bolany üçin,
ony üýtgetmek hiç zat üýtgetmez
daşynda:
function func(localNum) {
localNum = 2; // daşynda hiç zat üýtgetmez
}
let num = 1;
func(num);
Eger içinde num üýtgeýänini (global)
üýtgetsek, onda üýtgeşmeler daşynda hem peýda bolar:
function func(localNum) {
num = 2;
}
let num = 1;
func(num);
console.log(num); // 2 çykarar
Emma, eger funksiýanyň içinde
num üýtgeýänini let arkaly yglan etsek,
onda biz şeýlelikde daşky üýtgeýäne hiç bir täsir etmeýän
ýerli num üýtgeýänini dörederis:
function func(localNum) {
let num = 2; // let arkaly yglan et
}
let num = 1;
func(num);
console.log(num); // 1 çykarar - hiç zat üýtgenmedi
Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:
function func(localNum) {
console.log(localNum);
}
func(1);
Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num);
Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num);
num = 2;
Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:
let num = 1;
function func(localNum) {
console.log(localNum);
}
num = 2;
func(num);
Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:
function func(localNum) {
localNum = 2;
}
let num = 1;
func(num);
console.log(num);
Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:
function func(localNum) {
num = 2;
}
let num = 1;
func(num);
console.log(num);
Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:
function func(localNum) {
let num = 2;
}
let num = 1;
func(num);
console.log(num);