Использование функции как объекта

122
20 февраля 2019, 12:20

Читаю учебник по JavaScript. Сказано: "Функция в JavaScript является объектом, поэтому можно присваивать свойства прямо к ней, вот так:"

function f() {}
f.test = 5;
alert( f.test );

Я понимаю, что тут происходит. Но, как мне кажется, это достаточно странный код.

Есть ли ситуации, где оправдано использование функции как объекта подобным образом?

Answer 1

Простой пример, библиотека jquery. Вы можете использовать глобальный объект jQuery как функцию, и как контейнер вспомогательных методов:

jQuery('body').css('background-color', 'red'); // используем как функцию
if (jQuery.isFunction(null)) { /* ... */ } // используем как объект
READ ALSO
Как изменить цвет div через js

Как изменить цвет div через js

Есть вот такие дивы <html>

170
Как привязать к точке на изображении другое изображение

Как привязать к точке на изображении другое изображение

ищу либу или подсказки в какую сторону копать, чтобы получить на выходе практически вот это https://githubcom/timseverien/taggd, но вместо текста к точке надо...

188