let left='левый';
let right='правый';
{
var temp=left;
left=right;
right=temp;
}
console.log(left,right,temp);
Если переменные, объявленные с помощью VAR всегда поднимаются в коде, а переменные, объявленные с помощью LET не существуют до их объявления, почему следующий код не выдал ошибку? По идее, строка var temp=left должна подняться на самый верх, где переменная left ещё не была задана, т.е. код должен выдать ошибку Reference Error. В чем дело?