JavaScript-da bir xil nomli parametrlar

Endi tashqi va ichki funksiyalar bir xil nomli parametrlarga ega bo'lsin:

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

test(1);

Bunday holatda ichki funksiyada lokal num o'zgaruvchisi bo'ladi. Unga ichki funksiyada o'zgartirish kiritish tashqi num o'zgaruvchisiga hech qanday ta'sir ko'rsatmaydi:

javascriptfunction test(num) {
  function func(num) {
    num = 2; // lokal num o'zgaruvchisini o'zgartiramiz
  }
  
  func(num);
  console.log(num); // 1 chiqadi - hech narsa o'zgarmadi
}

test(1);

Natijada, ichki funksiya tashqi num o'zgaruvchisiga uni o'zgartirish uchun hech qanday tarzda murojaat eta olmaydi:

javascriptfunction test(num) {
  function func(num) {
    // bu yerda tashqi num o'zgaruvchisiga kirish mumkin emas
  }
  
  func(num);
}
test(1);
Задание 1

Kodni ishlamasdan, konsolga nima chiqishini aniqlang:

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

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

Kodni ishlamasdan, konsolga nima chiqishini aniqlang:

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

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

Kodni ishlamasdan, konsolga nima chiqishini aniqlang:

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

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

Kodni ishlamasdan, konsolga nima chiqishini aniqlang:

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

test(1);