Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: lexical, scope, chain

Как функция получает доступ к внешней области видимости?

Вопрос проверяет понимание механизма областей видимости и того, как JavaScript связывает функцию с внешними переменными.

Короткий ответ

Функция получает доступ к внешней области видимости благодаря лексической области видимости. При создании функции JavaScript запоминает окружение, в котором она была объявлена. При обращении к переменной интерпретатор ищет её сначала внутри функции, затем во внешних областях. Этот поиск идёт по цепочке областей видимости. Такой механизм лежит в основе замыканий.

Длинный ответ

Доступ функции к внешним переменным — это результат работы лексической модели областей видимости в JavaScript.

Как формируется доступ к внешним данным

Когда функция создаётся, движок JavaScript:

  1. Фиксирует лексическое окружение
    Функция «привязывается» к области видимости, в которой она была объявлена, а не вызвана.

  2. Создаёт ссылку на внешнее окружение
    Эта ссылка используется при поиске переменных.

  3. Использует цепочку областей видимости
    Если переменная не найдена локально, поиск продолжается выше.

Порядок поиска переменной

Поиск происходит последовательно:

  1. локальные переменные функции

  2. параметры функции

  3. переменные внешней функции или блока

  4. глобальная область видимости

Пример

const value = 10

function outer() {
  const value = 20

  function inner() {
    return value
  }

  return inner
}

const fn = outer()
fn() // 20

Функция inner получает доступ к value из outer, потому что именно там она была объявлена.

Вывод

Функция получает доступ к внешней области видимости через лексическое окружение, зафиксированное в момент её создания. Этот механизм делает поведение функций предсказуемым и независимым от места вызова.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    5

  • Сложность:

    7

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#lexical

#scope

#chain

Подпишись на React Developer в телеграм

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию