Globālie mainīgie un funkciju parametri JavaScript

Pieņemsim, ka mums ir funkcija, kas pieņem parametru skaitli:

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

Pieņemsim, ka ārpus funkcijas ir mainīgais num:

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

let num = 1; // ārējais globālais mainīgais

Izsauksim mūsu funkciju, nododot tai parametru mainīgo num:

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

let num = 1;
func(num); // izsaucam funkciju ar parametru, izvadīs 1

Rezultātā funkcijā būs pieejams gan mainīgais localNum (funkcijas parametrs), gan mainīgais num (kā ārējais mainīgais):

javascriptfunction func(localNum) {
  console.log(num); // izvadīs 1
  console.log(localNum); // izvadīs 1
}

let num = 1;
func(num);

Pats mainīgais localNum būs funkcijas lokālais mainīgais un nebūs pieejams no ārpuses:

javascriptfunction func(localNum) {
  
}

let num = 1;
func(num); // izsaucam funkciju ar parametru
console.log(localNum); // izvadīs kļūdu

Tā kā mainīgais localNum ir lokāls, tad nekādas izmaiņas ar to nemainīs nekā ārpus funkcijas:

javascriptfunction func(localNum) {
  localNum = 2; // neko nemaina ārpusē
}

let num = 1;
func(num);

Ja gan maina funkcijā mainīgo num (globālo), tad izmaiņas parādīsies arī ārpusē:

javascriptfunction func(localNum) {
  num = 2;
}

let num = 1;
func(num);
console.log(num); // izvadīs 2

Tomēr, ja funkcijā deklarēsim mainīgo num ar let, tad mēs šādi izveidosim lokālo mainīgo num, kas neietekmē ārējo mainīgo:

javascriptfunction func(localNum) {
  let num = 2; // deklarējam ar let
}

let num = 1;
func(num);
console.log(num); // izvadīs 1 - nekas nav mainījies
Задание 1

Noteikt, nepalaist kodu, ko izvadīs konsole:

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

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

Noteikt, nepalaist kodu, ko izvadīs konsole:

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

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

Noteikt, nepalaist kodu, ko izvadīs konsole:

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

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

Noteikt, nepalaist kodu, ko izvadīs konsole:

javascriptlet num = 1;

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

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

Noteikt, nepalaist kodu, ko izvadīs konsole:

javascriptfunction func(localNum) {
  localNum = 2;
}

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

Noteikt, nepalaist kodu, ko izvadīs konsole:

javascriptfunction func(localNum) {
  num = 2;
}

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

Noteikt, nepalaist kodu, ko izvadīs konsole:

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

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