Omfattning för kapslade funktioner i JavaScript
Om en funktion innehåller en annan funktion inuti - variablerna för den yttre funktionen är synliga i den inre:
function test() {
let num = 1; // variabel för den yttre funktionen
function func() {
console.log(num); // skriver ut 1
}
func(); // anropar den inre funktionen
}
test(); // anropar den yttre funktionen
Även i den inre funktionen kommer variabler att vara synliga, som definierats utanför den yttre funktionen:
let num = 1; // global variabel
function test() {
function func() {
console.log(num); // skriver ut 1
}
func(); // anropar den inre funktionen
};
test(); // anropar den yttre funktionen
Bestäm, utan att köra koden, vad som kommer att skrivas ut i konsolen:
function test() {
let num = 1;
function func() {
console.log(num);
}
func();
}
test();
Bestäm, utan att köra koden, vad som kommer att skrivas ut i konsolen:
function test() {
let num = 1;
function func() {
console.log(num);
}
}
test();
Bestäm, utan att köra koden, vad som kommer att skrivas ut i konsolen:
function test() {
let num = 1;
function func() {
console.log(num);
}
func();
}
Bestäm, utan att köra koden, vad som kommer att skrivas ut i konsolen:
function test() {
let num;
function func() {
console.log(num);
}
num = 1
func();
num = 2
func();
}
test();