Задать вопрос
@vetsmen

Передается ли переменная во вложенную функцию?

Есть такая вещь:
function one(){
var a = 5;
function two(){
console.log(a);
}
}

Передастся ли переменная во вложенную функцию?
  • Вопрос задан
  • 234 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
@holymotion
Ничего не никуда передаётся, это называется замыканием, скрытое свойство [[scope]] внутренней функции указывает на лексическую область видимости внешней функции (оно закрепляется в месте рождения функции), следовательно не найдя нужную переменную в своей лексической области видимости, она опирается на свой [[scope]]. console.log(a) - внутренней функции выведет 5
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
dpigo
@dpigo
Front-end developer
Да.

ps: такое можно и в консоли проверить же!
Ответ написан
Комментировать
Hyubert
@Hyubert
JS
Вот полезный материал по этому

https://habrahabr.ru/post/149526/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы