Локальная функция в замыкании объявляет переменную с тем же именем, которая существует в замыкании. Итак, как мы можем получить доступ к переменной замыкания из локальной функции?
function closure()
{
var xVar;
function func1()
{
var xVar;
// how to distinguish local and closure scopes.
return xVar;
}
return function () { return func1(); };
}
Создание приватного объекта и создание приватных переменных в качестве свойств этого объекта могут помочь. Но мне интересно, есть ли лучшее и аккуратное решение. Может ли помочь цепочка прицелов?
Я отредактировал, чтобы сделать его полным закрытием. В любом случае, замыкания здесь не очень важны, это можно рассматривать для внутренних функций, однако может быть какое-то решение с замыканиями.
Спасибо