Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Войти

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

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

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: переменные, область видимости, var, let, const

Объяснить разницу между var, let и const в JavaScript?

Вопрос проверяет знание ключевых отличий между способами объявления переменных и их поведение в разных ситуациях.

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

var имеет функциональную область видимости, поддерживает поднятие и может быть переназначен. let имеет блочную область видимости и также может быть переназначен. const тоже имеет блочную область видимости, но его значение нельзя переназначить.

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

  • var — переменные, объявленные через var, имеют область видимости на уровне функции. Это значит, что они видны во всей функции, даже если объявлены в блоках, таких как циклы. Кроме того, var поддерживает поднятие, что позволяет обращаться к переменной до ее объявления, хотя её значение будет undefined, если не было присвоено до этого.

  • let — это более современный способ объявления переменных, который имеет блочную область видимости. Это значит, что переменная существует только внутри блока, где она объявлена. let не поднимается, как var, что делает поведение более предсказуемым.

  • const — как и let, имеет блочную область видимости, но отличается тем, что значение переменной нельзя переназначить. Это используется для значений, которые не должны изменяться, как, например, ссылки на объекты или примитивы.

Пример:

if (true) {    
	var a = 1;   // доступно везде в функции    
	let b = 2;   // доступно только внутри блока    
	const c = 3; // тоже доступно только внутри блока 
}

Уровень

  • Рейтинг:

    2

  • Сложность:

    2

Навыки

  • JavaScript

    JavaScript

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

#переменные

#область видимости

#var

#let

#const

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