Встречается на собеседованиях • сегодня

В чем разница между var, let и const

var - устаревший способ объявления переменных, имеет функциональную область видимости и поднимается (hoisting). Может быть переопределена и изменена.

let - имеет блочную область видимости ({}), не поднимается, может быть изменена, но не переопределена в пределах блока.

const - аналогична let, но не может быть переопределена или изменена после инициализации (кроме объектов и массивов, где можно менять свойства/элементы).

javascript
if (true) {
  var a = 1;
  let b = 2;
  const c = 3;
}
console.log(a); // 1
console.log(b); // ReferenceError
console.log(c); // ReferenceError

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

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы