Tham số cùng tên trong JavaScript

Bây giờ giả sử hàm bên ngoài và hàm bên trong có các tham số cùng tên:

javascriptfunction test(num) {
  function func(num) {
    console.log(num); // sẽ hiển thị 1
  }
  
  func(num);
};

test(1);

Trong trường hợp này, hàm bên trong sẽ có một biến cục bộ num. Việc thay đổi nó trong hàm bên trong sẽ không ảnh hưởng gì đến biến bên ngoài num:

javascriptfunction test(num) {
  function func(num) {
    num = 2; // thay đổi biến cục bộ num
  }
  
  func(num);
  console.log(num); // sẽ hiển thị 1 - không có gì thay đổi
}

test(1);

Kết quả là hàm bên trong sẽ không thể nào truy cập được vào biến bên ngoài num để thay đổi nó:

javascriptfunction test(num) {
  function func(num) {
    // ở đây không thể truy cập vào biến bên ngoài num
  }
  
  func(num);
}
test(1);
Задание 1

Xác định, không chạy code, những gì sẽ được hiển thị trong bảng điều khiển:

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

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

Xác định, không chạy code, những gì sẽ được hiển thị trong bảng điều khiển:

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

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

Xác định, không chạy code, những gì sẽ được hiển thị trong bảng điều khiển:

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

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

Xác định, không chạy code, những gì sẽ được hiển thị trong bảng điều khiển:

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

test(1);