Ambito delle funzioni annidate in JavaScript
Se una funzione contiene un'altra funzione al suo interno - le variabili della funzione esterna sono visibili in quella interna:
function test() {
let num = 1; // variabile della funzione esterna
function func() {
console.log(num); // stamperà 1
}
func(); // chiamiamo la funzione interna
}
test(); // chiamiamo la funzione esterna
Inoltre, nella funzione interna saranno visibili le variabili definite all'esterno della funzione esterna:
let num = 1; // variabile globale
function test() {
function func() {
console.log(num); // stamperà 1
}
func(); // chiamiamo la funzione interna
};
test(); // chiamiamo la funzione esterna
Determina, senza eseguire il codice, cosa verrà stampato in console:
function test() {
let num = 1;
function func() {
console.log(num);
}
func();
}
test();
Determina, senza eseguire il codice, cosa verrà stampato in console:
function test() {
let num = 1;
function func() {
console.log(num);
}
}
test();
Determina, senza eseguire il codice, cosa verrà stampato in console:
function test() {
let num = 1;
function func() {
console.log(num);
}
func();
}
Determina, senza eseguire il codice, cosa verrà stampato in console:
function test() {
let num;
function func() {
console.log(num);
}
num = 1
func();
num = 2
func();
}
test();