Никуда переменные не поднимаются на самом деле. Можно же сказать понятно, что интерпретатор js-а работает в два этапа. На первом этапе он парсит код, создавая область видимости, в которой определяются переменные и инициализируются значением undefined, а на втором этапе, происходит, собственно выполнение. А то поднятие какое-то выдумали, всплытие, это вам не пузырьки в шампуне, чтоб всплывать
Поднятие звучит гораздо поэтичнее. Видишь как ты сразу возбудилась.
;)