Итак, предположим, что у меня есть что-то вроде этого
var x = 1;
if (function f(){}) {
x += typeof f;
}
x;
Это выводит «1undefined». Я думал, что он должен иметь вывод «1function», потому что функция f(){} должна была быть поднята над if. Это явно не так - почему? Я думал, что объявления и тела функций всегда поднимались наверх?
var foo = function f() {};
. - person Barmar   schedule 28.07.2015