Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Генерация и зацпск цепных функций (https://javascript.ru/forum/misc/46279-generaciya-i-zacpsk-cepnykh-funkcijj.html)

Tek 04.04.2014 15:20

так и планировал, только как потом вызвать все это без eval..

ksa 04.04.2014 15:24

Цитата:

Сообщение от Tek
только как потом вызвать все это без eval

Что-то типа такого...

var a=[
	{
		name: 'имя метода1',
		args: ['значение1',...,'значениеN1']
	},
	{
		name: 'имя метода2',
		args: ['значение1',...,'значениеN2']
	}
];
window[a[0].name](a[0].args[0],...,a[0].args[N]);

Sweet 04.04.2014 15:31

Цитата:

Сообщение от Tek
как потом вызвать все это без eval

.apply же:
var a=[
    {
        name: 'имя метода1',
        args: ['значение1',...,'значениеN1']
    },
    {
        name: 'имя метода2',
        args: ['значение1',...,'значениеN2']
    }
];

a.forEach(function (item) {
    this[item.name].apply(this, item.arguments);
}, window/*или что-нибудь ещё, где методы хранятся*/);

jsnb 04.04.2014 15:32

Так а что мешает циклом пройтись и последовательно вызвать все методы, сохраняя промежуточные результаты?

ksa 04.04.2014 15:36

Цитата:

Сообщение от jsnb
Так а что мешает циклом пройтись и последовательно вызвать все методы, сохраняя промежуточные результаты?

Никаких помех нет - вольному воля! :D

Tek 04.04.2014 15:38

Всем спасибо за ответы, будут побывать.


Часовой пояс GMT +3, время: 22:24.