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 :

Ecrire un programme JavaScript


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut Ecrire un programme JavaScript
    Bonsoir,
    Je suis débutant et je dois écrire un programme JavaScript qui teste deux valeurs a et b. Si a>b alors a est plus grand. Sinon b est plus grand ou les deux nombres sont égaux. J'ai fait ce qui suit :

    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
    var a=2 ;
    var b=1 ;
     
    if ((a==2)&&(b==1))
    {
    a>b;
    }
     
    else if
    {
    b>a;
    }
     
    else
    {
    a=b
    }
    Quelqu'un pourrait-il me dire si je suis sur la bonne voie ?
    Merci d'avance.

  2. #2
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 415
    Par défaut
    Salut,

    Après un "if" il faut une condition entre parenthèses "(...)" suivit d'accolades "{}" qui contiendront le code à effectuer si la condition est respectée.
    Donc else if{b>a;} n'est pas valide.


    Basiquement ton code devrait ressembler à quelque chose comme :
    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
    var a = 2;
    var b = 1;
     
    if(a == b)
    {
        alert('a = b');    
    }
    else if (a > b)
    {
        alert('a > b');
    }
    else
    {
        alert('a < b');
    }
    Et normalement comme il faut comparer des valeurs comparables on devrait utiliser !isNaN pour tester que a et b sont bien des valeurs numériques avant de faire des comparaisons.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut
    Merci pour ta réponse rapide.
    Pourrais-tu m'expliquer pour 'a et b' ?
    Merci.

  4. #4
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 415
    Par défaut
    T'expliquer quoi ?

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut
    Le ' sur a et b.

  6. #6
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 415
    Par défaut
    Le ' qui entoure l'expression est pour dire qu'il ne faut pas chercher à interpréter le contenu de l'expression et donc pour afficher réellement 'a > b'.

    Si tu faisais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <script>
    var a = 2;
    var b = 1;
    alert(a > b);
    </script>
    alors a et b seront interprétés dans le "alert" et cela va renvoyer le résultat du test soit "true".

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut
    Merci pour tout

  8. #8
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 415
    Par défaut
    De rien

    Quand un sujet est résolu, essaies de penser à le mettre résolu avec le bouton adéquat. Cela permet de signaler à ceux qui cherchent que le sujet contient une réponse et à ceux qui aident que ce n'est pas la peine d'aller visiter le sujet.

    En complément tu peux utiliser les "pouces" en bas de chaque message pour indiquer les messages qui t'ont aidés à la résolution du problème

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut
    Avec le code qui suit + ton code à partir du if, cela fonctionne correctement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var a = 0;
    var b = 0;
     
    a = prompt("a=");
    b = prompt("b=");

  10. #10
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 415
    Par défaut
    Oui si tu veux que a et b soient saisies par l'utilisateur dans une boite de dialogue javascript.

    Mais c'est un peu violent et pas pratique, d'autant plus qu'il faudra rafraichir la page pour faire d'autres tests.

    La plupart du temps que l'on souhaite que l'utilisateur rentre des données on fait une boite de saisie html et ça peut passer par un simple formulaire comme dans l'exemple ci-dessous :

    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
    <!DOCTYPE html>
    <html lang="fr">
    <head>
    <meta charset="UTF-8" />
    <title>Test</title>
     
    <script>
    function test_values(form)
    {
    	/* 
    	J'utilise querySelector() dans l'objet "form" qui représente le formulaire passé en paramètre lors de l'appel de la fonction "test_values(this)" dans le html.
    	Cela permet de cibler la recherche des éléments "input[name=a]" etc. à l'intérieur du formulaire. 
     
    	Un "document.querySelector()" ferait la recherche sur le document entier et donc pourrait amener à des confusions 	si la page contenait plusieurs formulaires. 
     
    	Et en même temps une recherche ciblée est beaucoup plus rapide.
    	*/
    	var a = form.querySelector("input[name=a]");
    	var b = form.querySelector("input[name=b]");
     
    	// Cible, dans le formulaire, le bloc ayant la classe "reponse" dans lequel seront écrits les résultats
    	var resultat = form.querySelector(".reponse");
     
    	// On obtient la valeur des input avec "value"
    	 a = a.value;
    	 b = b.value;
     
     	// si a ou b n'est pas une valeur numérique on envoie un message
     	if(isNaN(a) || isNaN(b))
    	 {
     		// On écris dans l'élément html avec "innerHTML"
    		 resultat.innerHTML = "a et b doivent être des valeurs numériques";
    	 }
    	 else
    	 {
    	     if(a == b)
    	     {
    		resultat.innerHTML = "a = b";    
    	     }
     	     else if (a > b)
      	     {
     		resultat.innerHTML = "a > b";  
    	     }
     	     else
                 {
    		resultat.innerHTML = "a < b";  
    	     }
    	}
    }
    </script>
     
    </head>
     
    <body>
    <!-- onsubmit déclenche sur l'événement on submit (à la soumission du formulaire), la fonction test_values() avec comme paramètre "this" qui en javascript représente l'objet en cours soit ici le formulaire. "return false" est pour ne pas soumettre automatiquement le formulaire puisqu'on souhaite le controler avec javascript --> 
    <form onsubmit = "test_values(this); return false">
     
        <label> a <input = "text" name = "a" /></label>
        <label> b <input = "text" name = "b" /></label>
        <input type = "submit" value = "test">
     
        <!-- bloc dans lequel sera affiché la réponse -->
        <div class = "reponse" ></div>
     
    </form>
    </body>
    </html>
    Voilà quand tu auras compris ce code tu auras le début du principe de la programmation en javascript.

    - Fonction qui se déclenche sur l'événement onsubmit du formulaire
    - Utilisation de l'opérateur "this" pour représenter l'objet en cours
    - Sélection d'objets avec "querySelector()"
    - Récupération des valeurs des input avec "value"
    - Ecriture javascript dans un élément html

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut
    Un grand merci

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

Discussions similaires

  1. Ecrire par programmation sur une feuille protégé !
    Par Freiya dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/05/2007, 21h54
  2. Ecrire des programmes compatibles DEP
    Par hardballer dans le forum Windows
    Réponses: 5
    Dernier message: 03/04/2007, 15h02
  3. Réponses: 13
    Dernier message: 11/01/2007, 14h13
  4. Palm 5: Ecrire un programme pour Clié
    Par clovis dans le forum C++Builder
    Réponses: 2
    Dernier message: 30/11/2006, 12h54
  5. [PHP-JS] Ecrire dans un javascript dynamiquement 'echo'
    Par nono3000 dans le forum Langage
    Réponses: 6
    Dernier message: 23/12/2005, 15h17

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