let x = 1;
function createSum(){
return function(){
return x + 5;
}
}
function foo(){
let x = 5;
return createSum()();
}
function bar(){
let x = 50;
return createSum()();
}
console.log(foo()); // 6
console.log(bar()); // 6
почему в bar не 55, ведь createSum должен брать переменную x из внешнего лекс окружения, но берет из глобального, почему?
let x = 1;
function createSum(x){
return x + 5;
}
function foo(){
let x = 5;
return createSum(x);
}
function bar(){
let x = 50;
return createSum(x);
}
console.log(foo());
console.log(bar());
frontend queen, я понимаю что можно сделать так, я пытаюсь разобраться с замыканием, не с простыми примерами типа "создаем счетчик и тп", а с чем-то более запутанным
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.