JavaScript-da global üýtgeýänler we funksiýa parametrleri

Bizde san parametr hökmünde kabul edýän funksiýa bolsun:

javascriptfunction func(localNum) {
  console.log(localNum);
}

Funksiýanyň daşynda num üýtgeýäni bolsun:

javascriptfunction 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:

javascriptfunction 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:

javascriptfunction 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:

javascriptfunction 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:

javascriptfunction 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:

javascriptfunction 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:

javascriptfunction func(localNum) {
  let num = 2; // let arkaly yglan et
}

let num = 1;
func(num);
console.log(num); // 1 çykarar - hiç zat üýtgenmedi
Задание 1

Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:

javascriptfunction func(localNum) {
  console.log(localNum);
}

func(1);
Задание 2

Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:

javascriptfunction func(localNum) {
  console.log(localNum);
}

let num = 1;
func(num);
Задание 3

Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:

javascriptfunction func(localNum) {
  console.log(localNum);
}

let num = 1;
func(num);
num = 2;
Задание 4

Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:

javascriptlet num = 1;

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

num = 2;
func(num);
Задание 5

Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:

javascriptfunction func(localNum) {
  localNum = 2;
}

let num = 1;
func(num);
console.log(num);
Задание 6

Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:

javascriptfunction func(localNum) {
  num = 2;
}

let num = 1;
func(num);
console.log(num);
Задание 7

Kody işletmezden öň, konsolda näme çykjakdygyny kesgitläň:

javascriptfunction func(localNum) {
  let num = 2;
}

let num = 1;
func(num);
console.log(num);