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 :

Code sans erreur mais le script js est non fonctionnel


Sujet :

JavaScript

  1. #1
    Membre averti
    Homme Profil pro
    étudiant
    Inscrit en
    Août 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2018
    Messages : 14
    Par défaut Code sans erreur mais le script js est non fonctionnel
    salut tous le monde j'ai besoin d'aide a propos d'un exercice a faire avec javascript(gestionnaire de contacts qui réalise des opérations simple tels que ajouter un contact ou bien afficher les contacts ),mon code est sans erreur mais le script js ne marche pas il m'affiche le message "choisissiez une option" tout au long de l’exécution sans réaliser aucune tâche je pense que le script tourne dans une boucle infinie mais je n'arrive pas a le détecter voici mon code merci de m'aider les amis.


    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
    console.log(" Bienvenu dans le gestionnaire des contacts ");
    console.log(" 1:Lister les contacts ");
    console.log(" 2:Ajouter un contact ");
    console.log(" 0:Quitter ");
    var Contact = {
        init:function(nom,prenom){
            this.nom=nom;
            this.prenom=prenom;
        },
        decrire:function() {
        var description=console.log(" Nom : " +this.nom+ " Prenom : " +this.prenom);
        return description;
    }
    }
     
    var contact1=Object.create(Contact);
    contact1.init("Lévisse","Carole");
    var contact2=Object.create(Contact);
    contact2.init("Nelsonne","Mélodie");
    var contacts=[];
    contacts.push(contact1);
    contacts.push(contact2);
    var choixUtilisateur;
    choixUtilisateur=-1;//condition intialement fausse pour qu'on puisse entrer dans la boucle
    while (choixUtilisateur!==0) {
        choixUtilisateur=prompt(" choissisez une option svp : " );
           if (choixUtilisateur===1) {
               contacts.forEach(function (cont) {
               console.log(cont.decrire());
               });
           }
        else if (choixUtilisateur===2) {
            var nomNouveauContact=prompt("Entrer le nom du nouveau contact ");
            var prenomNouveauContact=prompt(" Entrer le nouveau du prenom contact ");
            var NouveauContact=Object.create(Contact);
            NouveauContact.init(nomNouveauContact,prenomNouveauContact);
            contacts.push(NouveauContact);
        }
        if (choixUtilisateur===0) console.log("Au revoir ");
    }

  2. #2
    Membre émérite
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Novembre 2012
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2012
    Messages : 381
    Par défaut
    Bonjour,

    A priori prompt renvoie une chaîne ou null, pas 0 ou 1.

  3. #3
    Membre averti
    Homme Profil pro
    étudiant
    Inscrit en
    Août 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2018
    Messages : 14
    Par défaut
    merci beaucoup oui j'ai oublié le "number" avant prompt du coup le résultat du prompt c'est une chaîne de caractères mais j'ai un autre petit problème mon script fonction parfaitement mais après chaque ligne d’affichage il écrit une ligne undefinded malgré qu'il fonction a merveille et il affiche tous les résultats corrects mais je ne comprends pas pourquoi cet ligne s'affiche

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    contact1.init("Lévisse","Carole");
    ...
    contact2.init("Nelsonne","Mélodie");
    Ce ne serait pas plutôt :


  5. #5
    Membre averti
    Homme Profil pro
    étudiant
    Inscrit en
    Août 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2018
    Messages : 14
    Par défaut
    c'est l'énoncé de l'exercice mon ami hhhh merci tous le monde c'est bon le problème est résolu la variable cont que je l'utilise pour afficher les éléments du tableau est undefined

  6. #6
    Invité
    Invité(e)
    Par défaut
    Voici un code un peu plus "abouti" :
    Code JavaScript : 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
    var Contact = {
    	init:function(nom,prenom){
    		this.nom=nom;
    		this.prenom=prenom;
    	},
    	add:function(nom,prenom){
    		NouveauContact.init(nom,prenom);
    		contacts.push(NouveauContact);
    	},
    	decrire:function() {
    		return "- " +this.nom.toUpperCase()+ " " +this.prenom;
    	}
    }
     
    var contacts=[];
     
    var contact1=Object.create(Contact);
    contact1.init("Lévisse","Carole");
    contacts.push(contact1);
     
    var contact2=Object.create(Contact);
    contact2.init("Nelsonne","Mélodie");
    contacts.push(contact2);
     
    var Bienvenu = " Bienvenu dans le gestionnaire des contacts \n"+" 1: Lister les contacts \n"+" 2: Ajouter un contact \n"+" 0: Quitter \n";
    console.log(Bienvenu);
     
    var choixUtilisateur=-1;//condition intialement fausse pour qu'on puisse entrer dans la boucle
    while (choixUtilisateur!==0) {
    	choixUtilisateur = prompt(Bienvenu+"choissisez une option svp :");
    	choixUtilisateur = Number(choixUtilisateur);
    	switch( choixUtilisateur ) {
    		case 1:
    			var liste_contacts = "";
    			console.log( "Liste des contacts : \n" );
    			contacts.forEach(function (contact) {
    				console.log(contact.decrire());
    				liste_contacts += contact.decrire()+"\n";
    			});
    			alert( "Liste des contacts : \n"+liste_contacts );
    			break;
    		case 2:
    			var nomAddContact=prompt("Entrer le nom du nouveau contact ");
    			var prenomAddContact=prompt(" Entrer le nouveau du prenom contact ");
    			if( nomAddContact !== "" && prenomAddContact !== "" )
    			{
    				var NouveauContact=Object.create(Contact);
    				NouveauContact.add(nomAddContact,prenomAddContact);
    				alert("Nouveau contact créé : \n"+NouveauContact.decrire());
    			} else {
    				console.log("Nom et Prénom obligatoires");
    				alert("Nom et Prénom obligatoires");
    				choixUtilisateur = -1;
    			}
    			break;
    		case 0:
    			console.log("Au revoir ");
    			alert("Au revoir ");
    			break;
    		default:
    			choixUtilisateur = 0;
    			console.log("Au revoir ");
    			alert("Au revoir ");
    	}
    }
    N.B. j'ai doublé les console.log par des alert, au cas où on n'a pas eu le temps (ou la possibilité) d'ouvrir la console !
    Dernière modification par Invité ; 16/08/2018 à 20h54.

  7. #7
    Membre averti
    Homme Profil pro
    étudiant
    Inscrit en
    Août 2018
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2018
    Messages : 14
    Par défaut
    merci beaucoup mon ami "jreaux62" c'est gentil de ta part

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

Discussions similaires

  1. Mail envoyé sans erreur mais non reçu
    Par Skalp dans le forum Framework .NET
    Réponses: 0
    Dernier message: 15/06/2012, 16h00
  2. Réponses: 9
    Dernier message: 01/12/2010, 09h57
  3. Réponses: 2
    Dernier message: 27/04/2009, 13h09
  4. [AJAX] [Scriptaculous] Prog sans erreur mais sans aucun résultat
    Par popovitch130 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 17/05/2008, 13h34
  5. Mon code sans erreurs mais ne marche pas
    Par acacia dans le forum C
    Réponses: 49
    Dernier message: 25/01/2008, 16h38

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