Создать метод функции
Доброго времени суток. Как создать метод функции? Т.е. чтобы было на подобие этого:
func().method(); Давно видел подобную тебе на этом форуме, но сейчас найти не смог. Буду рад, если кините ссылку или дадите ответ в этой теме. |
На самом деле в данном случае это будет не метод функции, а метод того, что вернула функция. Метод функции это func.method().
А так простейший ваниант: function func(a){ return { method: function(b){alert(a + ' ' + b)} } } func('Hello').method('world!') Естесно в рабочем коде лишние объекты\функции не плодятся каждый раз, а возвращается ссылка. |
Почти всегда так делаю
http://javascript.ru/forum/misc/4962...tml#post326928 Такой механизм создает замыкание он позволяет сохранять переменные в функции что позволяет не засирать глобальную область видимости и избегать конфликтов да и сам вызов методов через цепочку .x().y().z() прост удобен и понятен |
Aetae,
Спасибо, буду знать |
|
рони,почитаю обязательно
|
Подскажите пожалуйста.
Если мне нужно вызвать функцию без метода, можно ли метод не возвращать без необходимости? Например в jQuery $('#el') возвращает элемент а $('#el').method('') применяет методы к этому элементу. Или как правильно это называется? |
HJ90,
ещёб понять чего ты хочешь? :-? |
Цитата:
Вот задумал написать функцию которая бы например что-то возвращала. И добавить ей методы которые при вызове дополнительно бы обрабатывали результ функции. Но чтобы методы относились именно к этой функции а не глобально ко всем. Пример из этого топика от Aetae всегда возвращает объект с методами еслы сделать просто func('Hello'). |
|
Часовой пояс GMT +3, время: 09:08. |