Gelijknamige parameters in JavaScript

Stel dat de externe en interne functie gelijknamige parameters hebben:

javascriptfunction test(num) {
  function func(num) {
    console.log(num); // geeft 1 weer
  }
  
  func(num);
};

test(1);

In dit geval zal er in de interne functie een lokale variabele num zijn. Het wijzigen ervan in de interne functie heeft geen invloed op de externe variabele num:

javascriptfunction test(num) {
  function func(num) {
    num = 2; // wijzig de lokale variabele num
  }
  
  func(num);
  console.log(num); // geeft 1 weer - er is niets veranderd
}

test(1);

Het resultaat is dat de interne functie op geen enkele manier toegang heeft tot de externe variabele num om deze te wijzigen:

javascriptfunction test(num) {
  function func(num) {
    // hier is het niet mogelijk om toegang te krijgen tot de externe variabele num
  }
  
  func(num);
}
test(1);
Задание 1

Bepaal, zonder de code uit te voeren, wat er in de console wordt weergegeven:

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

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

Bepaal, zonder de code uit te voeren, wat er in de console wordt weergegeven:

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

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

Bepaal, zonder de code uit te voeren, wat er in de console wordt weergegeven:

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

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

Bepaal, zonder de code uit te voeren, wat er in de console wordt weergegeven:

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

test(1);