Partage
  • Partager sur Facebook
  • Partager sur Twitter

Opérateur logique NON

Sujet résolu
    23 octobre 2016 à 21:24:42

    Bonjour à tous,

    j'ai un soucis de compréhension dans le cours sur JavaScript.

    Il est donné un exemple. Celui-ci vérifie la bonne saisie de l'adresse mail de l'utilisateur à l'aide d'une expression régulière :

    // Contrôle du courriel en fin de saisie
    document.getElementById("courriel").addEventListener("blur", function (e) {
        // Correspond à une chaîne de la forme xxx@yyy.zzz
        var regexCourriel = /.+@.+\..+/;
        var validiteCourriel = "";
        if (!regexCourriel.test(e.target.value)) {
            validiteCourriel = "Adresse invalide";
        }
        document.getElementById("aideCourriel").textContent = validiteCourriel;
    });

     Mon soucis est la ligne suivante :

        if (!regexCourriel.test(e.target.value)) {

    Je n'arrive pas à comprendre l'utilisation du "!". Je sais qu'il inverse la valeur mais ça reste assez flou. 

    Et même le reste de la ligne je n'en saisie pas le sens.

    Un exemple bête : (if 0 !== 2), là ça me parle je lis si 0 différent de 2 alors... Mais je n'arrive pas à "traduire" la condition ci-dessus.

    Si vous pouviez m'éclairer ça serait top ! merci

    • Partager sur Facebook
    • Partager sur Twitter
      23 octobre 2016 à 21:48:26

      et bien c'est pareil (if 0 !== 2) veut dire si 0 est different de 2. regexCourriel.test(e.target.value) test si ton adresse a la bonne forme et le ! qui est devant la condition signifie si e.target.value (autrement dis l'adresse que tu veux tester) est diferente de ton regex alors tu execute la condition. En gros ça veux dire si ton adresse n'est pas validé par ton regex alors la condition est exécutée.

      le ! veut toujours different de ce qui suit. dans ton cas, si tu veux tester si ton adresse est bonne, alors il te faut enlever le !

      • Partager sur Facebook
      • Partager sur Twitter

      Quand on fait tout, on est bon en rien...

      Anonyme
        24 octobre 2016 à 8:40:09

        La fonction "if (regexCourriel.test(e.target.value))" permet de vérifier si ton adresse mail est au bon format.

        Si elle n'est pas au bon format, alors -> voir ce que tu mets dans ta fonction :)

        -
        Edité par Anonyme 24 octobre 2016 à 8:40:53

        • Partager sur Facebook
        • Partager sur Twitter
          25 octobre 2016 à 17:31:50

          Ok ok j'ai capté le truc haha, je vous remercie pour vos réponses !
          • Partager sur Facebook
          • Partager sur Twitter

          Opérateur logique NON

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown