Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1110 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [JS] Exécuter une fonction à partir de son nom en variable chaîne

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JS] Exécuter une fonction à partir de son nom en variable chaîne

n°1524968
ceyquem
E falso sequitur quodlibet
Posté le 07-03-2007 à 09:27:48  profilanswer
 

Bonjour,
 
Je n'ai pas trouvé l'info sur Google alors je me permets de poser ma question ici : est-il possible d'exécuter une fonction JavaScript à partir de son nom dans une chaîne de caractères ?
 
Merci !

mood
Publicité
Posté le 07-03-2007 à 09:27:48  profilanswer
 

n°1525003
gatsu35
Blablaté par Harko
Posté le 07-03-2007 à 10:08:25  profilanswer
 

function fonctionamoi() {
  alert("blabla" );
}
var nomdelafonction = "fonctionamoi";
eval(nomdelafonction+"()" );

n°1525064
ceyquem
E falso sequitur quodlibet
Posté le 07-03-2007 à 11:14:32  profilanswer
 

hummmm, merci :D :jap:

n°1525322
masklinn
í dag viðrar vel til loftárása
Posté le 07-03-2007 à 15:30:03  profilanswer
 

gatsu35 a écrit :

function fonctionamoi() {
  alert("blabla" );
}
var nomdelafonction = "fonctionamoi";
eval(nomdelafonction+"()" );


Heuu ouais ou plus simplement
 

Code :
  1. function myFunc() {
  2.    alert("blabla" ):
  3. }
  4.  
  5. var functionName = "myFunc";
  6.  
  7. window[functionName]();


non parce que je rappelle qu'eval say le mal [:aloy]


Message édité par masklinn le 07-03-2007 à 17:01:34

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1525405
gatsu35
Blablaté par Harko
Posté le 07-03-2007 à 16:34:38  profilanswer
 

Ah oui j'avais oublié
 
/me retourne avec son code caca

n°1525423
ceyquem
E falso sequitur quodlibet
Posté le 07-03-2007 à 17:07:46  profilanswer
 

nickel :D merci !
J'avoue que j'ai pas trouvé les bons mots-clés pour avoir cette astuce sur google... :/

n°1525438
anapajari
s/travail/glanding on hfr/gs;
Posté le 07-03-2007 à 17:35:24  profilanswer
 

Le MDC est une très bonne base de départ quand tu cherches ce genre de chose:
http://developer.mozilla.org/en/do [...] _1.5_Guide
Tu peux commencer par lire tout le chapitre sur l'objet function :o
 

n°1525462
masklinn
í dag viðrar vel til loftárása
Posté le 07-03-2007 à 18:08:25  profilanswer
 

anapajari a écrit :

Le MDC est une très bonne base de départ quand tu cherches ce genre de chose:
http://developer.mozilla.org/en/do [...] _1.5_Guide
Tu peux commencer par lire tout le chapitre sur l'objet function :o


Oui enfin là c'est surtout savoir que les objets sont aussi des hashes et que tout ce qui est déclaré en global est en fait un attribut de l'objet window.
 
Ensuite seulement est nécessaire la connaissance du fait qu'en JS une fonction est un objet comme un autre et peut donc être manipulée comme on le veut, son nom n'étant finalement qu'accessoire, une sorte de raccourci réflexif :o


Message édité par masklinn le 07-03-2007 à 18:08:38

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1525650
anapajari
s/travail/glanding on hfr/gs;
Posté le 08-03-2007 à 08:50:02  profilanswer
 

Pas d'accord :o ( Pas sur le fond technique mais sur le forme "la doc" lui aurait servi à rien )
Généralement pour en arriver à faire ce genre d'ignominie, c'est qu'il y a une merde dans la conception. Et en lisant la doc il aurait vu tout les autres méthodes pour déclarer une fonction ( var a = function , var a = new Function , ...) ce qui aurait pu lui donner de bonnes idées.

n°1525720
masklinn
í dag viðrar vel til loftárása
Posté le 08-03-2007 à 10:53:39  profilanswer
 

anapajari a écrit :

Pas d'accord :o ( Pas sur le fond technique mais sur le forme "la doc" lui aurait servi à rien )
Généralement pour en arriver à faire ce genre d'ignominie, c'est qu'il y a une merde dans la conception. Et en lisant la doc il aurait vu tout les autres méthodes pour déclarer une fonction ( var a = function , var a = new Function , ...) ce qui aurait pu lui donner de bonnes idées.


Oui heu en l'occurence la seconde c'est de la merde en barre hein :o
 
Et si on veut vraiment savoir tout ce qu'on peut faire en JS, imho il n'y a qu'un moyen: Javascript The Definitive Guide 5e édition


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
mood
Publicité
Posté le 08-03-2007 à 10:53:39  profilanswer
 

n°1525746
anapajari
s/travail/glanding on hfr/gs;
Posté le 08-03-2007 à 11:29:21  profilanswer
 

masklinn a écrit :

Oui heu en l'occurence la seconde c'est de la merde en barre hein :o


ça dépend, ça peut être utile d'avoir une fonction qu'est évaluée à chaque appel [:spamafote]
 

n°1525762
masklinn
í dag viðrar vel til loftárása
Posté le 08-03-2007 à 12:12:09  profilanswer
 

anapajari a écrit :

ça dépend, ça peut être utile d'avoir une fonction qu'est évaluée à chaque appel [:spamafote]


Là elle est pas évaluée à chaque appel elle est générée à chaque appel, et tu peux avoir la même chose en plus rapide avec une fonction anonyme normale


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1525781
anapajari
s/travail/glanding on hfr/gs;
Posté le 08-03-2007 à 13:22:00  profilanswer
 

masklinn a écrit :

Là elle est pas évaluée à chaque appel elle est générée à chaque appel, et tu peux avoir la même chose en plus rapide avec une fonction anonyme normale


 :jap: Tu chipottes mais tu as a raison puisque c'est l'objet Function qui est evalué et pas la fonction elle-même.
(Faut vraiment faire attention au choix des mots avec toi :o )

n°1526035
ceyquem
E falso sequitur quodlibet
Posté le 08-03-2007 à 20:09:58  profilanswer
 

wow j'ai déclenché une polémique :D

n°1526131
anapajari
s/travail/glanding on hfr/gs;
Posté le 09-03-2007 à 08:44:45  profilanswer
 

nan pas une polémique, sur ce forum ça s'appele une discussion avec Masklinn ;)

n°1526589
ceyquem
E falso sequitur quodlibet
Posté le 09-03-2007 à 19:11:28  profilanswer
 

:D

n°1526591
masklinn
í dag viðrar vel til loftárása
Posté le 09-03-2007 à 19:20:29  profilanswer
 

J'vous merde tous [:thalis]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [JS] Exécuter une fonction à partir de son nom en variable chaîne

 

Sujets relatifs
operation mathématique sur une variable (script pop up)VBA access requete SQL et fonction()
fonction javascript qui regroupe 2 pages htmlRésultat code PHP dans une variable --> include ?
MySQL et fonction PASSWOR('...')[newbie] Spécifier la taille d'un tableau par une variable ??
Travail à la chaine très peu pour moi !comment invoquer une variable qui contient des crochets
[VBA-Excel] variable Public 
Plus de sujets relatifs à : [JS] Exécuter une fonction à partir de son nom en variable chaîne


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR