Įdėtųjų funkcijų aprėptis JavaScript

Jei funkcijoje yra kitą funkciją - išorinės funkcijos kintamieji yra matomi vidinėje:

javascriptfunction test() {
  let num = 1; // išorinės funkcijos kintamasis
  
  function func() {
    console.log(num); // išves 1
  }
  
  func(); // iškviečiame vidinę funkciją
}

test(); // iškviečiame išorinę funkciją

Be to, vidinėje funkcijoje bus matomi kintamieji, apibrėžti už išorinės funkcijos ribų:

javascriptlet num = 1; // globalusis kintamasis

function test() {
  function func() {
    console.log(num); // išves 1
  }
  
  func(); // iškviečiame vidinę funkciją
};

test(); // iškviečiame išorinę funkciją
Задание 1

Nepaleisdami kodo, nustatykite, kas bus atvaizduota konsolėje:

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

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

Nepaleisdami kodo, nustatykite, kas bus atvaizduota konsolėje:

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

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

Nepaleisdami kodo, nustatykite, kas bus atvaizduota konsolėje:

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

Nepaleisdami kodo, nustatykite, kas bus atvaizduota konsolėje:

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

test();