Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вызвать функцию, имя которой хранится в переменной (https://javascript.ru/forum/misc/32334-vyzvat-funkciyu-imya-kotorojj-khranitsya-v-peremennojj.html)

Алекс_123321 12.10.2012 01:44

Вызвать функцию, имя которой хранится в переменной
 
Здравствуйте.

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

FINoM 12.10.2012 02:04

eval(fnName+'()')

monolithed 12.10.2012 02:37

window['function']();

nerv_ 12.10.2012 02:39

monolithed, не успел :) (я) Ладно, раз слепил, пусть будет:
function foo() {
    alert( 1 );
}

var name = 'foo';

window[ name ]();

Maxmaxmахimus 12.10.2012 04:13

FINoM, правильнее так :yes:
eval( funcName )()


потому что можно параметры передавать.

логичнее сначала возвращать обьект из ивального контекста а потом делать с ним че угодно, чем генерить код под ивал и делать действия там))

п.с. ребят, какой еще window, каким надо быть долбоебом чтобы все функции в window обьявлять)?

Aetae 12.10.2012 04:30

Цитата:

Сообщение от Maxmaxmахimus (Сообщение 209573)
каким надо быть долбоебом чтобы все функции в window обьявлять)?[/b]

Обыкновенным.

P.S. Примерно таким же каким надо быть, чтоб понадобилось эвалить функцию.

Maxmaxmахimus 12.10.2012 11:22

Ха, ну да, логично)


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