Coincidencia de nombres con parámetros en JavaScript
Los parámetros de la función son variables locales dentro de ella. Llamemos al parámetro de la función con el mismo nombre que una variable global externa:
function func(num) {
console.log(num);
}
let num = 1;
func(num);
En este caso, resultará que
fuera de la función habrá una variable num
y dentro de la función habrá una variable num.
Pero estas serán variables diferentes: el cambio
de la variable dentro de la función conducirá
a un cambio en la variable local
de la función. Y la variable externa dentro
de la función no estará disponible y no podrá ser
cambiada de ninguna manera. Comprobemos:
function func(num) {
num = 2; // cambiamos la variable local
}
let num = 1;
func(num);
console.log(num); // mostrará 1 - nada ha cambiado
Determine, sin ejecutar el código, qué se mostrará en la consola:
function func(num) {
num = 2;
}
let num = 1;
func(num);
console.log(num);
Determine, sin ejecutar el código, qué se mostrará en la consola:
function func() {
num = 2;
}
let num = 1;
func();
console.log(num);
Determine, sin ejecutar el código, qué se mostrará en la consola:
function func() {
let num = 2;
}
let num = 1;
func();
console.log(num);