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

Développement Web en Java Discussion :

Une erreur en javascript que je ne comprends pas


Sujet :

Développement Web en Java

  1. #1
    Membre habitué
    Inscrit en
    Mai 2009
    Messages
    514
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 514
    Points : 131
    Points
    131
    Par défaut Une erreur en javascript que je ne comprends pas
    Hello tous, bonne année !

    Et elle commence bien pour moi : je tente d'approfondir mes connaissances en javascript, et, forcément, je me plante...

    Voici la chose :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function lis()
    {  alert('Lis');
      var a, b, c, p=Parametres();
      c="";
      p.foreach(f(a,b)
      { //a: index, b: valeur pour chaque ligne du tableau
        if len(c)>1 then c+=" & ";
        c+= a + " = " + b; 
      });
      document.getElementById('chaine').innerHTML=c;
    }
    La fonction Parametres() est censée mee retourner un tableau associatif nom/valeur.
    Le seul intérêt de cette page est de m'assurer que je sais récupérer les paramètres, mais il semble justement que je ne le sache pas : l'inspecteur me retourne l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Uncaught SyntaxError: missing ) after argument list
    sur la ligne 6.

    Merci d'avance à qui saura m'aider.

    AMIcalement.

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Bonjour et meilleurs voeux pour cette nouvelle année.
    Attention, javascript est sensible à la casse, foreach n'existe pas, forEach par contre existe.
    Il n'y a pas de méthode len(...) non plus.
    Une condition if utilise des parenthèses et il n'y a pas then.
    Enfin, on n'écrit pas f(a,b) pour définir une fonction de traitement mais function(a, b)
    Voici un code conforme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function lis()
    {  
        alert('Lis');
        var a, b, c, p=Parametres();
        c="";
        p.forEach(function(a,b){
            if (c.length > 1) c += " & ";
            c += a + " = " + b; 
        });
        document.getElementById('chaine').innerHTML=c;
    }
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre habitué
    Inscrit en
    Mai 2009
    Messages
    514
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 514
    Points : 131
    Points
    131
    Par défaut
    Bonjour, et merci.

    Ma parole, il n'y avait pas UNE erreur, mais largement au moins TROIS...

    J'ai bien raison de vouloir approfondir mes connaissances, et il y a du boulot !

    J'ai l'impression que je n'ai pas fini de venir vous interroger...

    Je teste dans la journée avant de marquer "Résolu".

    En toute modestie, merci encore.

    AMIcalement.

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Si vous démarrez avec javascript, ce site est assez bien fait.

    Je ne sais pas de quel langage de programmation vous venez mais si c'est du langage objet (type java, c++, etc...) javascript est très différent.
    Déjà par le fait qu'il n'y a pas de typage, à un instant t on peut avoir un String, à t+1 ça peut devenir un nombre (ou inversement).
    Du coup, si on n'y prête pas attention, on peut vite avoir des résultats incompréhensibles...
    Un exemple type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        var s = "10";
        s += "0";
        alert(typeof(s) + " : " + s);
     
        s = parseInt(s);
        alert(typeof(s) + " : " + s);
     
        s += "1";   
        alert(typeof(s) + " : " + s);
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre habitué
    Inscrit en
    Mai 2009
    Messages
    514
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 514
    Points : 131
    Points
    131
    Par défaut
    Oh ! Mon histoire de programmeur a commencé il y a 50 ans (pour être tout à fait exact, il y aura 50 ans en avril).

    Je ne suis pas sûr de ne pas en oublier, mais j'ai fait de l'assembleur (du petit calculateur maison à l'IBM 370), j'ai fait du Fortran, du PL1, de l'APL, du Cobol, un peu de C...

    Je suis retraité et depuis je fais surtout du VisualBasic6. Çà me donne une petite teinture "objet", mais c'est vrai que ce n'est pas le fond de ma culture.

    Quoi qu'il en soit, sur le problème d'aujourd'hui, ce que j'ai découvert (après un intense parcours du Web), c'est que ce que j'essaie de faire existe déjà tout fait, ça s'appelle URLSearchParams.

    Je vais donc remercier tout le monde et marquer mon sujet "Résolu".

    AMIcalement.

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Cool, encore envie d'apprendre, bravo
    Bonne continuation avec javascript, c'est sûr que ça change de l'assembleur...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] J'ai une erreur (requete sql)que je ne comprends pas du tout Mysqlfetcharray()
    Par metou2703 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 28/09/2009, 13h52
  2. [MySQL] Une erreur de syntaxe que je n'arrive pas à voir
    Par herzak dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 15/09/2009, 16h04
  3. Réponses: 2
    Dernier message: 22/01/2009, 16h29
  4. Erreur avec unlink que je ne comprend pas
    Par Prosis dans le forum Langage
    Réponses: 10
    Dernier message: 05/06/2007, 15h14

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