Sovrapposizione di nomi con parametri in JavaScript
I parametri della funzione sono variabili locali al suo interno. Denominiamo un parametro della funzione con lo stesso nome di una variabile globale esterna:
function func(num) {
console.log(num);
}
let num = 1;
func(num);
In questo caso, avremo una variabile num
fuori dalla funzione e una variabile num
all'interno della funzione.
Ma queste saranno variabili diverse: la modifica
della variabile all'interno della funzione porterà
a cambiare la variabile locale
della funzione. E la variabile esterna all'interno
della funzione sarà inaccessibile e non potrà essere
modificata in alcun modo. Verifichiamo:
function func(num) {
num = 2; // modifichiamo la variabile locale
}
let num = 1;
func(num);
console.log(num); // stamperà 1 - nulla è cambiato
Determinate, senza eseguire il codice, cosa verrà stampato in console:
function func(num) {
num = 2;
}
let num = 1;
func(num);
console.log(num);
Determinate, senza eseguire il codice, cosa verrà stampato in console:
function func() {
num = 2;
}
let num = 1;
func();
console.log(num);
Determinate, senza eseguire il codice, cosa verrà stampato in console:
function func() {
let num = 2;
}
let num = 1;
func();
console.log(num);