Мне интересно, знает ли кто-нибудь, почему некоторые люди определяют глобальные переменные, которые настроены на функции, а не просто определяют глобальное имя функции. Например:
var foo = function() { alert('hello!'); }
вместо
function foo() { alert('hello!'); }
Не лучший ли второй метод, так как есть шанс, что что-то может переписать первую переменную, и вы потеряете эту функцию? Имеет ли это какое-либо отношение к расширению объектов? Есть ли проблемы с производительностью?