Показать сообщение отдельно
  #1 (permalink)  
Старый 09.07.2013, 13:17
Кандидат Javascript-наук
Отправить личное сообщение для Valdemor Посмотреть профиль Найти все сообщения от Valdemor
 
Регистрация: 30.03.2012
Сообщений: 128

Полу-объект, полу-функция
Я хочу написать такой гибрид (см. название темы), который бы при вызовах:
hybrid().func();

и
hybrid.func2();

вызывал бы соответствующие функции.
Я вспомнил, что подобный подход был в jQuery. Я двигался несколько дней подряд, но решил-таки спросить здесь.
Мой код:
var hybrid = window.hybrid = function(text) {
   return new hybrid.fn.init(text)
}
hybrid.fn = hybrid.prototype = {
   init: function(text) {
      return {};
   },
   func: function() {
      alert("It's work!");
   }
}
hybrid.func2 = function() {alert("Func2!");}
hybrid.fn.init.prototype = hybrid.fn;

Но вызов hybrid("sometext").func() не работает! Почему?
Ответить с цитированием