Читаю учебник по JavaScript. Сказано: "Функция в JavaScript является объектом, поэтому можно присваивать свойства прямо к ней, вот так:"
function f() {}
f.test = 5;
alert( f.test );
Я понимаю, что тут происходит. Но, как мне кажется, это достаточно странный код.
Есть ли ситуации, где оправдано использование функции как объекта подобным образом?
Простой пример, библиотека jquery. Вы можете использовать глобальный объект jQuery как функцию, и как контейнер вспомогательных методов:
jQuery('body').css('background-color', 'red'); // используем как функцию
if (jQuery.isFunction(null)) { /* ... */ } // используем как объект
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости