@vetsmen

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

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

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

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

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

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

Войти через центр авторизации
Похожие вопросы