Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Превращение значения обьекта в название функции. (https://javascript.ru/forum/misc/15148-prevrashhenie-znacheniya-obekta-v-nazvanie-funkcii.html)

alexandre 15.02.2011 06:05

Превращение значения обьекта в название функции.
 
Запутался немного с вызовом функций, есть объект
a = {"act1":"call_alert","act2":"text2"};

из него в переменную получаем значение первого элемента
var func_name = a['act1'];

И далее при клике на нужный элемент вызываем функцию название которой формируем из элемента обьекта.
$('.zzz').click(function(){
		func_name();
	});

Соответственно сама функция
function call_alert(){
		alert('aaaaaaaaa');
    }

Фаербаг пишет что не знает функции func_name() впринцепе логично нет такойй функции но как можно динамически из объекта или массива функции штамповать?

Aetae 15.02.2011 08:40

window[func_name]

А ввообще в объект добавляйте сразу сами функции.
a = {"act1":call_alert,"act2":text2};

alexandre 15.02.2011 18:17

a = {"act1":call_alert,"act2":text2};

Это хороший вариант но объекты хранятся в CouchDB в виде json и неполучаеться без кавычек почемуто содержать там их.
А с
window[func_name]
не совсем понял как использовать можете подробней рассказать.

x-yuri 15.02.2011 23:01

Цитата:

Сообщение от alexandre
Это хороший вариант но объекты хранятся в CouchDB в виде json и неполучаеться без кавычек почемуто содержать там их.

а чего вообще в БД храняться названия функций?

Aetae 16.02.2011 01:04

Цитата:

Сообщение от alexandre (Сообщение 92650)
А с
window[func_name]
не совсем понял как использовать можете подробней рассказать.

window['alert'](010+2)


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