В JavaScript все значения, кроме примитивов, являются объектами.
Запустил собственную версию вашего кода, чтобы помочь продемонстрировать:
Также обратите внимание на типы созданных объектов. В вашем первом примере $
- это object
, который содержит функцию (и). Во втором * $
- это функция (объект) со свойством, которое также является функцией:
Любой из вариантов будет идеальным для предотвращения загрязнение области, первый пример наиболее соответствует стандартам создания объектов.