Ничего не будет выведено: const = 3 — синтаксическая ошибка, которая препятствует исполнению всего скрипта. Даже console.clear() не начнёт работать.
Что будет напечатано в консоли при данном JavaScript‑фрагменте
Ничего не будет выведено: const = 3 — синтаксическая ошибка, которая препятствует исполнению всего скрипта. Даже console.clear() не начнёт работать.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Определите, какие значения появятся в выводе консоли после выполнения следующего кода:
console.clear()
console.log(a)
console.log(b)
console.log(c)
var a = 1
let b = 2
const = 3
Учтите особенности поднятия (hoisting) переменных, различия между var, let и const, а также то, что объявление const без имени является синтаксической ошибкой.
Ответ
Ничего не будет выведено: const = 3 — синтаксическая ошибка, которая препятствует исполнению всего скрипта. Даже console.clear() не начнёт работать.
Если исправить последнюю строку на const c = 3, первым будет выведено undefined для a: объявление var уже инициализировано, присваивание ещё нет. Затем console.log(b) бросит ReferenceError из-за temporal dead zone let b, и до console.log(c) выполнение не дойдёт.
Поэтому нельзя описывать три последовательных значения как результат исходной программы: сначала учитывается ошибка разбора, а после её исправления — первое необработанное runtime-исключение.