Причина, по которой он печатает undefined
, заключается в том, что HM.init
ничего не возвращает (оператор return
отсутствует, поэтому по умолчанию возвращается undefined
).
Либо вы хотите добавить return
до вызова this.carousel.init()
, например:
...
HM.init = function(){
return this.carousel.init();
}
...
... или вы хотите использовать console.log
вместо этого внутри вашей функции HM.carousel.init
, если вы хотите напечатать 'initialize HM' на консоли:
...
HM.carousel = {
init: function(){
return 'initialise HM';
}
}
...
(само по себе возвращаемое значение не является хорошим средством отладки, поэтому, вероятно, имеет смысл распечатать его с помощью console.log
.)