Почему возврат функции, определенной вне текущей функции, не создает замыкание? - PullRequest
0 голосов
/ 17 сентября 2018

В функции outer я возвращаю функцию, которая использует то же имя, что и переменная, объявленная / определенная внутри outer.

Почему же тогда замыкание не создается?Почему следующий код печатает undefined, а не Yolo!?

function inner(){
    console.log('theVar', theVar);
}

function outer(){
    var theVar = 'Yolo!';
    return inner;
}

console.log('Starting...');
outer()();

1 Ответ

0 голосов
/ 18 сентября 2018

объявления var внутри области действия функции доступны только внутри этой функции, в вашем случае external ()

...