|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre éclairé
![]() Intégrateur HTML / Developpeur .NET Inscription : janvier 2007 Messages : 369 ![]() |
Bonjour,
Je me sens un peu bête de poser cette question car elle se trouve surement quelque part sur internet mais impossible de formuler ma requête correctement pour la trouver. Je stock une fonction dans une variable de cette manière : Code :
merci de votre aide. |
||
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
Essaie ceci :
Code javascript :
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
||
|
|
00
|
|
|
#3 |
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
le souci ne provient pas du fait que la focntion soit ou non stockée dans une variable. C'est un souci propre à setTimeout ou setInterval.
En principe ces deux methodes acceptent un troisème argument : les paramètres. Mais ce troisième argument n'est pas reconnu par tous les navigateurs. Il faut passer par une fonction anonyme (closure) : Code :
setTimeout(function(){test(p);}, 1000);
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() Intégrateur HTML / Developpeur .NET Inscription : janvier 2007 Messages : 369 ![]() |
Ta solution ne marche pas RomainVALERI dans mon cas, il me dit que la fonction n'existe pas.
En revanche celle de SpaceFrog marche très bien, merci encore ! |
|
|
00
|
|
|
#5 | |
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
Citation:
mais bref c'est en effet plus efficace de passer par une closure de toutes façons, ça permet d'éviter de passer par l'eval qui se cache dans l'utilisation de setTimeout/setInterval quand on leur passe une chaine en premier param... donc +1 SF
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|
|
|
00
|
|
|
#6 | ||
|
Membre éclairé
![]() Intégrateur HTML / Developpeur .NET Inscription : janvier 2007 Messages : 369 ![]() |
Je ne voulais pas surcharger mon post de code.
Effectivement c'est surement un problème de portée de variables Code :
|
||
|
|
00
|
|
|
#7 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 805 ![]() |
@Romain :
n'est pas recommandé, cette notation faisant appel à eval(). D'où d'ailleurs ton erreur, il faut passer p dans la chaine et non sa valeur
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
00
|
|
|
#8 |
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
Beef tu es sur que le parmètre passe ?????
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
|
|
00
|
|
|
#9 | ||
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 805 ![]() |
Bah... oui
Code :
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
||
|
00
|
|
|
#10 |
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
ceci étant la methode RV
fonctionne
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
|
|
00
|
|
|
#11 | ||
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 805 ![]() |
Citation:
Citation:
![]() Mais dans ce cas, tu ne passe pas une variable à la fonction, mais sa valeur (donc la valeur, au moment de l'appel, pas au moment où le code est exécuté
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
||
|
00
|
|
|
#12 |
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 007 ![]() |
oui si la variable change entre deux ... ^^
d'ou la simplicité d'utilisation de la closure qui en plus évite l'évaluation
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
|
|
00
|
|
|
#13 | |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 805 ![]() |
Citation:
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
|
00
|
|
|
#14 | |
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
Il me manquait les quotes en effet ^^
au final : closure pour tout le monde ![]() Citation:
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com