Vienodi parametrai JavaScript

Tegul dabar išorinė ir vidinė funkcijos turi vienodus parametrus:

javascriptfunction test(num) {
  function func(num) {
    console.log(num); // išves 1
  }
  
  func(num);
};

test(1);

Šiuo atveju vidinėje funkcijoje bus vidinis kintamasis num. Jo pakeitimas vidinėje funkcijoje jokiu būdu nepaveiks išorinio kintamojo num:

javascriptfunction test(num) {
  function func(num) {
    num = 2; // keičiam lokalų kintamąjį num
  }
  
  func(num);
  console.log(num); // išves 1 - niekas nepakito
}

test(1);

Pasirodys, kad vidinė funkcija jokiu būdu negali pasiekti išorinio kintamojo num jo pakeitimui:

javascriptfunction test(num) {
  function func(num) {
    // čia neįmanoma gauti prieigos prie išorinio kintamojo num
  }
  
  func(num);
}
test(1);
Задание 1

Nustatykite, nepaleisdami kodo, kas bus atspausdinta konsolėje:

javascriptfunction test(num) {
  function func(num) {
    console.log(num);
  }
  
  func(num);
}

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

Nustatykite, nepaleisdami kodo, kas bus atspausdinta konsolėje:

javascriptfunction test(num) {
  function func(num) {
    num = 2;
  }
  
  func(num);
  console.log(num);
}

test(1);
Задание 3

Nustatykite, nepaleisdami kodo, kas bus atspausdinta konsolėje:

javascriptfunction test(num) {
  function func(num) {
    console.log(num);
  }
  
  num = 2;
  func(num);
}

test(1);
Задание 4

Nustatykite, nepaleisdami kodo, kas bus atspausdinta konsolėje:

javascriptfunction test(num) {
  function func(num) {
    console.log(num);
  }
  
  func(num);
  num = 2;
}

test(1);