Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.07.2011, 21:51
Интересующийся
Отправить личное сообщение для db_test Посмотреть профиль Найти все сообщения от db_test
 
Регистрация: 14.09.2010
Сообщений: 15

Передача имени функции в другую с параметрами
Доброго, всем

есть ли возможность передать в некоторую функцию, имя функции как строку и ее аргументы массивом и сделать apply?

Для примера вызывается какая-то функция которая по callback должно выполнить другую, но не жестко прописанную, с этим проблем нету ...

Без фреймворков ...

Буду благодарен за все советы ...

Дмитрий
Ответить с цитированием
  #2 (permalink)  
Старый 21.07.2011, 21:59
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

var
	callbackFunc = function (a, b) { return a > b; },
	func = function (a) { return a(2, 3); };
	
func(callbackFunc);
__________________
kobezzza
code monkey
Ответить с цитированием
  #3 (permalink)  
Старый 21.07.2011, 23:21
Интересующийся
Отправить личное сообщение для db_test Посмотреть профиль Найти все сообщения от db_test
 
Регистрация: 14.09.2010
Сообщений: 15

Спасибо, но скорей всего я не правильно изъяснился хочется что то типа того:

preTest = function() {
        var _funcName = 'test';
        func = function(_funcName);
   }

   test = function() {
       alert('aaaaa');
   }


или это невозможно?
Ответить с цитированием
  #4 (permalink)  
Старый 21.07.2011, 23:24
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от db_test Посмотреть сообщение
Спасибо, но скорей всего я не правильно изъяснился хочется что то типа того:

preTest = function() {
        var _funcName = 'test';
        func = function(_funcName);
   }

   test = function() {
       alert('aaaaa');
   }


или это невозможно?
func = eval(_funcName + "()");
__________________
kobezzza
code monkey
Ответить с цитированием
  #5 (permalink)  
Старый 21.07.2011, 23:28
Интересующийся
Отправить личное сообщение для db_test Посмотреть профиль Найти все сообщения от db_test
 
Регистрация: 14.09.2010
Сообщений: 15

Сообщение от kobezzza
func = eval(_funcName + "()");
без EVIL никак? )
Ответить с цитированием
  #6 (permalink)  
Старый 21.07.2011, 23:33
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Цитата:
без EVIL никак? )
var objFnc = {test: function () { alert("aaaaa"); }}

objFnc["test"]();
__________________
kobezzza
code monkey
Ответить с цитированием
  #7 (permalink)  
Старый 21.07.2011, 23:39
Интересующийся
Отправить личное сообщение для db_test Посмотреть профиль Найти все сообщения от db_test
 
Регистрация: 14.09.2010
Сообщений: 15

Хм. Но в данном случае для всех функций надо будет прописывать ключи?
И писать функции внутри .... а они там немаленькие.

Хотя если развить идею в данном направлении ... то тогда в принимающей функции, можно прописать что то типа

switch(type) {
    case: "test"
    test();
     break;
     case: "test2"
    test3();
}


спасибо
Ответить с цитированием
  #8 (permalink)  
Старый 21.07.2011, 23:41
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Цитата:
Хм. Но в данном случае для всех функций надо будет прописывать ключи?
И писать функции внутри .... а они там немаленькие.
Вполне нормальная реализация, есть объект, а у него есть методы, нету каши в глобальном пространстве и все рады)
__________________
kobezzza
code monkey
Ответить с цитированием
  #9 (permalink)  
Старый 21.07.2011, 23:56
Интересующийся
Отправить личное сообщение для db_test Посмотреть профиль Найти все сообщения от db_test
 
Регистрация: 14.09.2010
Сообщений: 15

Реализация не спорю адекватная, но
как говорится мне надо сделать на том что было ))) с меньшими затратами

Еще раз спасибо за направление
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск функции несколько раз подряд с разными параметрами ZaetS Общие вопросы Javascript 0 07.04.2011 19:43
Передача функции другой функции ntro123 jQuery 3 20.02.2011 12:15
Изменение имени и выполнение функции в цикле infocean Общие вопросы Javascript 6 03.12.2010 18:11
передача имени элемента в функцию Zubik Общие вопросы Javascript 0 06.10.2009 11:00
передача параметров функции underW Общие вопросы Javascript 2 04.04.2009 23:03