Читайте начало в посте выше В этом примере «innerFunction» определена внутри «outerFunction» и ссылается на «outerVariable».
Когда «outerFunction» вызывается, она возвращает переменной «innerFunc» функцию «innerFunction».
Когда переменная «innerFunc» со значением функции вызывается, то функция «innerFunction» выполняется и выводит значение переменной «outerVariable» в консоль, несмотря на то, что «outerFunction» уже возвратила значение, в данном случае функцию «innerFunction».
Замыкания — это мощное и гибкое средство. Его можно использовать для различных целей, таких как создание инкапсуляции данных, реализаци callbacks и многое другое.
Мы постарались объяснить замыкания на более простом языке, чем обычно это делают в учебниках. Если у вас есть какие-то предложения или идеи в чем еще мы можем вам помочь разобраться, то не стесняйтесь писать свои предложения и идеи в комментариях.
Всем энергичного продолжения дня!
#learning_js