Javascript Нечетное поведение Scoping
мы изучали область действия функции Javascript и столкнулись с этим:
var scope = "global";
function f(){
console.log(scope);
var scope = "local";
console.log(scope);
}
f();
Теперь я понимаю, что вывод первого журнала "не определено» из-за того, как JS поднимает переменные в верхней части функции. НО когда я удаляю var из "var scope = "местный";" первый лог выходовГлобальный" и это заставило меня почесать голову. Может кто-нибудь объяснить, почему это происходит, пожалуйста? Я имею в виду нет JS последовательно запустить код? Таким образом, как удаление VAR может повлиять на первый журнал?