Ключевое слово var
в javascript заставляет переменную храниться в локальной области. Без var
переменные относятся к глобальной области. Как насчет функций? Это ясно, что происходит, когда функции объявляются как переменные
var foo = function() {...}
но какая область
function foo() {...}
принадлежат?
EDIT: Я понял, что не задал достаточно правильного вопроса, чтобы продолжить. Во внешнем большинстве вложенности есть разница между двумя вышеупомянутыми объявлениями и следующим объявлением?
foo = function() {...}