Executer une fonction.....

Résolu
wooki Messages postés 14 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 22 juillet 2005 - 21 juil. 2005 à 17:19
wooki Messages postés 14 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 22 juillet 2005 - 22 juil. 2005 à 10:02
Bonjour,



....en créant le nom de la fonction a partir de variable.



Ex :



i=1;

do["test" + i];



function test1() {

}



function test2() {
}




:: wOOki ::

3 réponses

wooki Messages postés 14 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 22 juillet 2005
22 juil. 2005 à 10:02
bon ben voila,



function test1(theText) {

trace(theText);

}



i=1;



this["test" + i]("aaaa");

stop();


l'object this fait l'evaluation, et donc il faut mettre les parentheses a l'exterieur et non a l'interieur de l'évaluation....


:: wOOki ::
3
naq2 Messages postés 59 Date d'inscription samedi 24 janvier 2004 Statut Membre Dernière intervention 23 décembre 2006
21 juil. 2005 à 17:37
Je pense qu'il faut utiliser la fonction eval :

i = 1 ;
eval("test" + i + "() ;") ;

Voilà.
0
wooki Messages postés 14 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 22 juillet 2005
22 juil. 2005 à 09:28
désolé, mais non, j'y avait pensé mais cela ne marche pas et de plus la fonction eval est obsolete la syntaxe en mx est :



this["test" + i];



merci quand meme, je reste ouvert a d'autre idée

:: wOOki ::
0