在函数outer
中,我返回的函数的名称与在outer
中声明/定义的变量的名称相同。
为什么不创建闭包?为什么以下代码打印undefined
,而不打印Yolo!
?
function inner(){
console.log('theVar', theVar);
}
function outer(){
var theVar = 'Yolo!';
return inner;
}
console.log('Starting...');
outer()();
答案 0 :(得分:0)
var声明只能在该函数内访问,在您的情况下,是external()