Назад к вопросам
JuniorТеорияЧасто
Что выведет программа (строки через пробел)?
let x = 1;
{
let x = 2;
console.log(x);
}
console.log(x);2 1
- Ждать
2 2, будто внутренняя строка изменила внешнийx:let x = 2объявляет новую переменную, которая живёт только внутри{}и закрывает там внешнюю. - Ждать
SyntaxErrorиз-за второго объявленияx: эта ошибка бывает только в одном и том же блоке, аletво вложенном блоке — отдельная переменная.
- Что напечатает программа, если внутренняя строка —
x = 2безlet? - Как коду внутри блока добраться до внешнего
x, когда тот закрыт?