24. var a = “GlobalA”;
var b = “GlobalB”;
function func1() {
var b = “Func1B”;
function func2() {
var c = “Func2C”;
console.log(c); // > “Func2C”
console.log(b); // > “Func1B”
console.log(a); // > “GlobalA”
}
func2();
}
func1();
ここの変数の値
を探すルール
25. var a = “GlobalA”;
var b = “GlobalB”;
function func1() {
var b = “Func1B”;
function func2() {
var c = “Func2C”;
console.log(c); // > “Func2C”
console.log(b); // > “Func1B”
console.log(a); // > “GlobalA”
}
func2();
}
func1();
Cはこのスコープで見つかる
26. var a = “GlobalA”;
var b = “GlobalB”;
function func1() {
var b = “Func1B”;
function func2() {
var c = “Func2C”;
console.log(c); // > “Func2C”
console.log(b); // > “Func1B”
console.log(a); // > “GlobalA”
}
func2();
}
func1();
Bはこのスコープで見つかる
27. var a = “GlobalA”;
var b = “GlobalB”;
function func1() {
var b = “Func1B”;
function func2() {
var c = “Func2C”;
console.log(c); // > “Func2C”
console.log(b); // > “Func1B”
console.log(a); // > “GlobalA”
}
func2();
}
func1();
Aはこのスコープで見つかる
28. var a = “GlobalA”;
var b = “GlobalB”;
function func1() {
var b = “Func1B”;
function func2() {
var c = “Func2C”;
console.log(c); // > “Func2C”
console.log(b); // > “Func1B”
console.log(a); // > “GlobalA”
}
func2();
}
func1();
変数の
検索範囲
が徐々に
広がって
いる
49. var a = “GlobalA”;
var b = “GlobalB”;
function func1() {
var b = “Func1B”;
function func2() {
var c = “Func2C”;
console.log(c); // > “Func2C”
console.log(b); // > “Func1B”
console.log(a); // > “GlobalA”
}
func2();
}
func1();
さっきのも
クロージャ