Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Динамически обратиься к функции (https://javascript.ru/forum/misc/32571-dinamicheski-obratisya-k-funkcii.html)

МихаиL98 21.10.2012 18:56

Динамически обратиься к функции
 
Допустим есть функция function f0 { ... } function f1 { ... } function f2 { ... } ..
Далее нам нужно динамически обратиться к ф-ции типа f0();
Но если неизвестен id ф-ции? f+id(); что-то такое надо, но не могу понять как это реализовать..
Извините, что нубский вопрос, я новичок..

dmitriymar 21.10.2012 19:01

eval('f'+id+'()')

а лучше будет:
function f0 { ... };
function f1 { ... } ;
function f2 { ... } ...
var arrayFn=[f0,f1,f2....];
arrayFn[id]();

МихаиL98 21.10.2012 19:19

function selectscen (num) {
eval('s'+num) ();
alert('робит');
}


но что-то не работает(

dmitriymar 21.10.2012 20:39

Цитата:

Сообщение от iMaxmaxmaximus
вообще-то вызывать функцию надо уже вне ивала, сколько раз говорить,

eval('f'+id) ()

объясни разницу между этими способами, кроме удобства передачи аргументов, какие отсутствуют в вопросе

lord2kim 21.10.2012 21:11

МихаиL98, судя по названиям функций вероятность того, что у вас они практически идентичны, стремится к 100%...
в таком случае проще сделать одну функцию и передавать ей необходимые аргументы...


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