方法:看当前函数是在哪个作用域下定义的,那它的上级作用域就是谁,和函数在哪执行的没有任何关系
var num = 20;
function fn() {
var num = 10;
return function () {
console.log(num);
}
}
var foo = fn();
foo(); // 10
(function () {
var num = 1200;
foo();
})() // 10
方法:看当前函数是在哪个作用域下定义的,那它的上级作用域就是谁,和函数在哪执行的没有任何关系
var num = 20;
function fn() {
var num = 10;
return function () {
console.log(num);
}
}
var foo = fn();
foo(); // 10
(function () {
var num = 1200;
foo();
})() // 10