@danny_kotov
Начинающий front-end разработчик

Как понять работу переменных let?

let left='левый';
let right='правый';

{
 var temp=left;
  left=right;
  right=temp;
}

console.log(left,right,temp);

Если переменные, объявленные с помощью VAR всегда поднимаются в коде, а переменные, объявленные с помощью LET не существуют до их объявления, почему следующий код не выдал ошибку? По идее, строка var temp=left должна подняться на самый верх, где переменная left ещё не была задана, т.е. код должен выдать ошибку Reference Error. В чем дело?
  • Вопрос задан
  • 188 просмотров
Решения вопроса 1
alvvi
@alvvi
export default apathy;
"Сверху" она только была объявлена, операция присваивания произошла там, где она и должна происходить.
(5 строка)
Самым очевидным образом ваш код выглядит так
var temp;
let left='левый';
let right='правый';

{
  temp=left;
  left=right;
  right=temp;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы