IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

eval d'une fonction


Sujet :

JavaScript

  1. #21
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    je revien vous voir

    le problème ce déplace c'est la dernière ligne droite et je suis entrain de le mettre en joux pour le coup fatal

    voilà le code que j'ai pondu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    // récupération des scripts
    var mesScripts = document.getElementById(this.idFillObj).getElementsByTagName("script");
     
    // pour chaque script
    for (var i=0; i<mesScripts.length; i++) {
     
       // on initialise la variable qui va récupérer les scripts traités
       var script = "";
     
       // si il y a des fonctions à instancier
       if(mesScripts[i].innerHTML.search(/(?:function)\s(.*)\)/gi) != -1){
     
          // on enregistre le script pour le modifier plus tard
          script = mesScripts[i].innerHTML;
     
          // on récupère les entêtes des fonctions
          var entetesFonctions = mesScripts[i].innerHTML.match(/(?:function)\s(.*)\)/gi);
     
          // on initialise la variable qui va stocker les nouvelles entêtes
          var entete = "";
     
          // pour chaque entête
          for( var j = 0; j < entetesFonctions.length; j++){
     
             // on récupère le nom de la fonction
             // on commence par enlever se qu'il y a devant le nom
             entete = entetesFonctions[j].replace(/(?:function)\s*/gi, "");
     
             // ensuite on enlève se qu'il y a après et on le stock dans
             // nomFonction
             nomFonction = entete.replace(/\(.*\)/gi, "");
     
             // puis on récupère les paramètres eventuels de la fonction
             params = entete.replace(/(?:.*\()|\)/gi, "");
     
             // on reconstruit l'entête pour que la fonction
             // soit instenciée correctement
             entete = "window['"+nomFonction+"'] = function ("+params+")";
     
             // création du model de l'entête de fonction à rechercher
             // selon le nom de la fonction
             pattern = new RegExp("(?:function)\s*"+nomFonction+"\(.*\)","gi"); 
             //                      ^== PROBLEME CA MARCHE PAS
             //                      apparament il aime pas le \( et le \)
     
             alert (script.match(pattern));
     
             // remplacement de l'entête dans le script à évaluer
             script = script.replace(pattern, entete);
             //alert(script);
          }
       }else{
          script = mesScripts[i].innerHTML;
       }
          //eval(script);
    }
    comment pourrai-je résoudre ça ?
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  2. #22
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    bon ben voilà c'est finalement résole

    voilà le code à utiliser pour que ça marche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    // Lorsque la requête réussit
    Ajax.prototype.onComplete = function (response)
    {
       // si il y a un objet à remplir (this.idFillObj != "")
       if (this.idFillObj != ""){
     
          // insertion de response après le innerHTML de l'objet à remplir
          if (this.append == "after") {
             document.getElementById(this.idFillObj).innerHTML = this.inner+"<br />"+response;
     
          // insertion de response avant le innerHTML de l'objet à remplir
          }else if (this.append == "before"){
             document.getElementById(this.idFillObj).innerHTML = response+"<br />"+this.inner;
     
          // response remplace le innerHTML de l'objet à remplir
          }else if (this.append == "no") {
       	   document.getElementById(this.idFillObj).innerHTML = response;
          }
     
          // récupération des scripts
          var mesScripts = document.getElementById(this.idFillObj).getElementsByTagName("script");
     
          // pour chaque script
          for (var i=0; i<mesScripts.length; i++) {
     
             // on initialise la variable qui va récupérer les scripts traités
             var script = "";
     
             // si il y a des fonctions à instancier
             if(mesScripts[i].innerHTML.search(/(?:function)\s(.*)\)/gi) != -1){
     
                // on enregistre le script pour le modifier plus tard
                script = mesScripts[i].innerHTML;
     
                // on récupère les entêtes des fonctions
                var entetesFonctions = mesScripts[i].innerHTML.match(/(?:function)\s*(.*)\)/gi);
                alert (entetesFonctions);
                // on initialise la variable qui va stocker les nouvelles entêtes
                var entete = "";
     
                // pour chaque entête
                for( var j = 0; j < entetesFonctions.length; j++){
     
                   // on récupère le nom de la fonction
                   // on commence par enlever se qu'il y a devant le nom
                   entete = entetesFonctions[j].replace(/(?:function)\s*/gi, "");
     
                   // ensuite on enlève se qu'il y a après et on le stock dans
                   // nomFonction
                   nomFonction = entete.replace(/\(.*\)/gi, "");
     
                   // puis on récupère les paramètres eventuels de la fonction
                   params = entete.replace(/(?:.*\()|\)/gi, "");
     
                   // on reconstruit l'entête pour que la fonction
                   // soit instenciée correctement
                   entete = "window['"+nomFonction+"'] = function ("+params+")";
     
                   // création du model de l'entête de fonction à rechercher
                   // selon le nom de la fonction
             	   pattern = new RegExp("(?:function)\\s*"+nomFonction+"\\s*\\(.*\\)","gi");
     
                   // remplacement de l'entête dans le script à évaluer
                   script = script.replace(pattern, entete);
     
                }
             }else{
                script = mesScripts[i].innerHTML;
             }
             eval(script);
          }
       }
    }
    à noter qu'il faut doubler les anti-slashs (\) pour que la regexp fonctionne quand on la définie comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    pattern = new RegExp ("\\d", "g");
     
    // sinon aulieu d'avoir ça
    alert(pattern.source); // affiche \d
     
    // on a ça
    pattern = new RegExp ("\d", "gi");
     
    alert(pattern.soucre); // affiche d
    voila voila

    merci à tout ceux qui on aidés ou ont essayés de comprendre ce que je voulais faire (grâce à mes explication médiocres)



    PS: c'est possible de mettre tout ça dans les contribution javascript et ajax ?
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  3. #23
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 670
    Points
    66 670
    Billets dans le blog
    1
    Par défaut
    Joli resultat en effet...
    Cependant sasn vouloir être rabat-joie, une chose fondamentale m'echappe:
    Perso je ne vois pas l'interet de vouloir générer une fonction javascript à partir d'un retour ajax ...
    Les focntions devraient déja exister dans des fichiers externes et il suffit de leure passer des paramètres obtenus par le retour ajax.

    Pourquoi cette methode de generation de la fonction qui oblige une évaluation de string ?
    Ma page Developpez - Mon Blog 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

    Venez sur le Chat de Développez !

  4. #24
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Pourquoi cette methode de generation de la fonction qui oblige une évaluation de string ?
    1) ben en fait je modifie un site existant et comme j'ai pas envie de récupérer toutes les fonctions JS qui sont dans les fichers que j'appèle maintenant par Ajax je préfaire les évaluer.

    2) et puis aussi ça me dis rien de toujour devoir tout importer dans la page principale.

    je préfère avoir les fonction et les appels de fonction sur la même page pour programmer(je fais pas de nouveau fichier js si ce n'est pas une classe ou des fonctions que j'utilisent pour toutes les pages comme ca).

    voilà donc enfait j'ai surtout la flème de repasser derriere toutes les pages du site.

    petite question:
    les déclarations window['toto'] = function(param1, param2){ ... } fonctionnent sous ie ?
    et autre chose comment on fait pour avoir un message d'erreur complet sous ie7 et pas ceux qui son 'simplifiés' ?

    à cause de ces deux question je réactive le poste dsl
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  5. #25
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    bon ben dsl j'arrive pas à trouver comment avoir les vrais messages d'erreurs sous ie 7.

    merci de m'aider même se sujet s'écarte un peu pas JS
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  6. #26
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 670
    Points
    66 670
    Billets dans le blog
    1
    Par défaut
    utilise firefox ^^
    Ma page Developpez - Mon Blog 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

    Venez sur le Chat de Développez !

  7. #27
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    problème ça marche très bien sous FF
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  8. #28
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 670
    Points
    66 670
    Billets dans le blog
    1
    Par défaut
    il y a eu un poste recemment sur le debug sous IE ... ils doivent avoir une debugbar .. ??

    http://www.debugbar.com/



    sinon commence déja par ça
    http://bealers.com/2007/01/12/debugg...script-in-ie7/
    Ma page Developpez - Mon Blog 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

    Venez sur le Chat de Développez !

  9. #29
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    merci pour les liens bien que j'avais trouvé la débugbar je vais plutot essayer les outils MS autant prendres des trucs du même fournisseur ^^

    (même si ca risque de planter toutes les 5 minutes )
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  10. #30
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    ouai je vais enfin pouvoir déboguer

    ce qu'ils disent nulle part c'est que pour qu'on puisse attacher MSE7 (avec vista en tout cas) c'est qu'il faut désactiver les protections d'IE7 ...

    sinon il te pète cette vieille erreur :

    impossible d'attacher le processus. les fichier utilisé n'existe pas.


    le truc c'est que j'arrive quand même pas à utiliser le débugger avec IE7.
    je le lance en stand alone et ensuite je l'attache sur IE7.

    m'enfin si ça marche comme ça on va pas trifouiller pour que ça marche autrement.

    enfin un débogueur JS pour IE
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  11. #31
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    je pleure

    IE n'aime pas ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var mesScripts = document.getElementById(this.idFillObj).getElementsByTagName("script");
    à tout de suite pour plus d'infos
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  12. #32
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 670
    Points
    66 670
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog 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

    Venez sur le Chat de Développez !

  13. #33
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    bon ben voila fin du mistère de IE.

    on ne peux pas faire ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var mesScripts = document.getElementById(this.idFillObj).getElementsByTagName("script");
    parceque quand on remplis comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById(this.idFillObj).innerHTML = response;
    ben IE il enlève les balises <script> </script> et leurs contenu.
    Du coup on se retrouve avec un element remplis comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <div id="core">
       <input type="button" value="bouton" onclick="test()" />
    </div>
    aulieu de ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <div id="core">
       <script type="text/javascript">
       function test(){
          alert("test OK");
       }
       </script>
     
       <input type="button" value="bouton" onclick="test()" />
    </div>
    conclusion il faut que je remette mon parser ...

    je revien quand ça marchera (ou quand j'aurai un nouveau problème )

    PS: ça contien l'id de l'objet à remplir avec la réponse AJAX c'est une propriété de ma classe AJAX
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  14. #34
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    ça c'est le code final de ma fonction tada

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    // Lorsque la requête réussit
    Ajax.prototype.onComplete = function (response)
    {
     
       // si il y a un objet à remplir (this.idFillObj != "")
       if (this.idFillObj != ""){
          // insertion de response après le innerHTML de l'objet à remplir
          if (this.append == "after") {
             document.getElementById(this.idFillObj).innerHTML = this.inner+"<br />"+response;
     
          // insertion de response avant le innerHTML de l'objet à remplir
          }else if (this.append == "before"){
             document.getElementById(this.idFillObj).innerHTML = response+"<br />"+this.inner;
     
          // response remplace le innerHTML de l'objet à remplir
          }else if (this.append == "no") {
             document.getElementById(this.idFillObj).innerHTML = response;
          }
     
          //////////////////////////////
          // récupération des scripts //
          //////////////////////////////
     
          // parseur de javascript
          response = response.match(/(?:<script.*javascript.*>(?:[^<]+[\n\0\f\r]*)*<\/script>)/gi);
          var mesScripts = "";
          for(i = 0; i < response.length; i++){
             if (response[i] != "") {
                mesScripts += response[i];
             }
          }
          mesScripts = mesScripts.replace(/(?:<script.*javascript.*>)|(?:<\/script>)/gi, "");
          // fin du parser de javascript
     
          // on récupère les entêtes d'éventuels fonctions
          var entetesFonctions = mesScripts.match(/(?:function)\s*([^\)]*)\)/gi);
     
          // si il y a des fonctions à instancier
          // pour chaque entête
          for( var j = 0; j < entetesFonctions.length; j++){
     
             // on récupère le nom de la fonction
             // on commence par enlever se qu'il y a devant le nom
             entete = entetesFonctions[j].replace(/(?:function)\s*/gi, "");
     
             // ensuite on enlève se qu'il y a après et on le stock dans
             // nomFonction
             nomFonction = entete.replace(/\(.*\)/gi, "");
     
             // puis on récupère les paramètres eventuels de la fonction
             params = entete.replace(/(?:.*\()|\)/gi, "");
     
             // on reconstruit l'entête pour que la fonction
             // soit instenciée correctement
             entete = "window['"+nomFonction+"'] = function ("+params+")";
     
             // création du model de l'entête de fonction à rechercher
             // selon le nom de la fonction
             pattern = new RegExp("(?:function)\\s*"+nomFonction+"\\s*\\([^\\)]*\\)","gi");
     
             // remplacement de l'entête dans le script à évaluer
             mesScripts = mesScripts.replace(pattern, entete);
     
          }
     
          // évaluation du script
          eval(mesScripts);
       }
     
       // réinitialisation des variables pour éviter les conflits entre deux appels
       this.asyn = true;
       this.data = "";
       this.url = "";
       this.method = "POST";
       this.returnFormat = "txt";
       this.idFillObj = "";
       this.inner = "";
       this.append = "no";
    }
    et ça fonction sur FF et IE

    bon normalement cette adresse fonctionne si vous voulez voir.
    page de test
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

  15. #35
    Membre habitué Avatar de hiul dragonfel
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 199
    Points : 155
    Points
    155
    Par défaut
    DSL de remonter ce post mais finalement la solution que j'ai ne fonctionne pas car pour des scripts importants le "match()" fait planter JS à cause de la taille de la chaine à traiter.

    je crois que je vais devoir me résoudre à passer derrière toutes les pages du site pour mettre les fonction js dans des fichiers .js merci pour l'aide que vous m'avez offerte et à une prochaine fois.
    Le langage de programmation le plus vieux, le plus optimiser et le plus efficace est l'ADN quelqu'un d'extrêmement intelligent l'a obligatoirement inventé.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [PHP 5.3] eval et strrpos dans une fonction
    Par michelg77 dans le forum Langage
    Réponses: 52
    Dernier message: 12/03/2012, 15h00
  2. [PHP 5.3] eval dans une fonction
    Par michelg77 dans le forum Langage
    Réponses: 2
    Dernier message: 06/03/2012, 15h13
  3. Eval n'exécute qu'une fois une fonction
    Par Gp2mv3 dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 05/09/2011, 16h10
  4. utilisation d'eval pour une fonction générique
    Par DrDam dans le forum Langage
    Réponses: 5
    Dernier message: 17/09/2008, 12h22
  5. Existe-t-il une fonction Eval() sous Delphi ?
    Par Hell dans le forum Langage
    Réponses: 5
    Dernier message: 20/12/2004, 17h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo