Что выведет код Junior Области видимости и замыкания обновлено

Область видимости var в блоке

Вопрос

Что выведет код? По строке на каждый вывод.

if (true) {
  var a = 1;
  let b = 2;
}
console.log(a);
console.log(typeof b);

Попробуйте сами

Напишите, что выведет код: каждый вывод с новой строки.

Показать ответ и разбор

Коротко

Код выведет: 1, undefined. Почему так var привязан к функции (или модулю), let/const - к блоку.

Что выведет

1
undefined

Разбор

Почему так

var привязан к функции (или модулю), let/const - к блоку. Поэтому var «вытекает» из if и циклов.

Вывод

1
undefined

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.