Если вы когда-нибудь сталкивались с кодом на JavaScript, то, возможно, заметили, что раньше активно использовалось ключевое слово var, а сейчас в основном применяют let. И да, это не просто модный тренд, у них действительно есть отличия. Давайте разберёмся, в чём же разница, и почему лучше выбрать let для современного кода. С let всё строго – переменная существует только внутри блока {}, в котором она объявлена. То есть, если вы создаёте переменную внутри фигурных скобок, снаружи она будет недоступна: {
let x = 10;
}
console.log(x); // Ошибка: x не определена А вот var работает по-другому. У него функциональная область видимости, и переменная доступна во всей функции или, если она объявлена вне функции, в глобальной области. {
var y = 20;
}
console.log(y); // 20 let и var обе поднимаются (hoisting), но ведут себя по-разному. Переменные, объявленные через let, попадают в так называемую "Temporal Dead Zone" (TDZ) до момента их инициализации. То есть, вы не можете использовать