A beágyazott függvények hatókörének szabályai JavaScriptben

Ha egy függvény tartalmaz egy másik függvényt a magában - a külső függvény változói láthatóak a belső függvényben:

javascriptfunction test() {
  let num = 1; // a külső függvény változója
  
  function func() {
    console.log(num); // kiírja 1-et
  }
  
  func(); // meghívjuk a belső függvényt
}

test(); // meghívjuk a külső függvényt

A belső függvényben azok a változók is láthatóak lesznek, amelyek a külső függvényen kívül lettek definiálva:

javascriptlet num = 1; // globális változó

function test() {
  function func() {
    console.log(num); // kiírja 1-et
  }
  
  func(); // meghívjuk a belső függvényt
};

test(); // meghívjuk a külső függvényt
Задание 1

Határozd meg, kód futtatása nélkül, hogy mit ír ki a konzolra:

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

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

Határozd meg, kód futtatása nélkül, hogy mit ír ki a konzolra:

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

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

Határozd meg, kód futtatása nélkül, hogy mit ír ki a konzolra:

javascriptfunction test() {
  let num = 1;
  
  function func() {
    console.log(num);
  }
  
  func();
}
Задание 4

Határozd meg, kód futtatása nélkül, hogy mit ír ki a konzolra:

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

test();