Показать сообщение отдельно
  #6 (permalink)  
Старый 11.04.2018, 00:14
Интересующийся
Отправить личное сообщение для Auroar Посмотреть профиль Найти все сообщения от Auroar
 
Регистрация: 10.04.2018
Сообщений: 10

Почти все понял
Первое понял, спасибо), последнее не пойму:
После функции abcv в функции get "a" становится равна 1? Если да - то после повторного вызова функции в начале ее указана что a = 0, то-есть она обнуляться должна, почему этого не происходит?
function get() {
 var a = 0;
 return function abcv() { //Возвращаем 1
 a++;
 console.log(a);
 }
 // a = 1 (по идеи)
 }
 // Теперь a в get() равна 1 (По идеи)
/* ГЛАВНОЕ: Получается когда мы делаем присвоение get() к b мы присваиваем функцию где a = 1, но в начале get() у нас все ровно a присваевается(=) к 0, вот и не пойму. Если при выполнении функции a сразу становится 0. Как оно тогда работает?
 */
var b = get();
 b();
 b();
Ответить с цитированием