Simplifiez les conditions avec les opérateurs logiques et opérateurs ternaires
Lorsque nous codons, nous devons souvent écrire des conditions.
Or, des fois que notre code devienne difficile à relire à cause de celles-ci. C’est pourquoi, nous pouvons dans ces cas-là, utiliser la magie des opérateurs logiques et les opérateurs ternaires.
Alternative à la syntaxe “if”
Nous utilisons souvent les conditions de cette manière:
if (condition) { maFonction();}Grâce aux opérateurs, nous pouvons effectuer des conditions sans if ! Comment ? Voici la syntaxe:
condition && maFonction();La fonction est lancée uniquement si condition == true.
Comment est-ce possible ?
L’opération a && b renvoie vrai uniquement si a ET b sont vrais.
Voici les cas de figures:
- Si
aest faux, l’opérateur renvoiefauxet il n’y a pas besoin de lireb. - Si
aest vrai, l’opérateur ne sait pas encore quoi renvoyer et doit lire la valeur deb. Et c’est en lisant cette valeur que l’opérateur va déclencher la fonction.
Alternative à la syntaxe if (!condition)
Bien entendu, nous pouvons inverser cette condition avec l’une des deux syntaxes:
// (si la condition n'est pas remplie, alors lance la fonction)!condition && maFonction();
condition || maFonction();Ces deux syntaxes sont équivalentes.
L’opérateur a || b réagi de la façon opposée que a && b décrit ci-dessus.
Il renvoie faux uniquement si a ET b sont faux.
- Si
aest vrai, l’opérateur renvoievraiet il n’y a pas besoin de lireb. - Si
aest faux, l’opérateur ne sait pas encore quoi renvoyer et doit lire la valeur deb. Et c’est en lisant cette valeur que l’opérateur va déclencher la fonction.
Alternative à la syntaxe “if - else”
Et bien-sûr, nous pouvons utiliser classiquement l’opérateur ternaire pour ajouter un else.
if (condition) { maFonction();} else { maFonction2();}Voici la syntaxe:
condition ? maFonction() : maFonction2();L’opérateur ternaire est plus courant en développement et est plus facile à comprendre.
Exemples concrets
Passons maintenant aux exemples concrets.
Voici un premier exemple où l’on souhaite afficher le nombre de messages non lu uniquement s’il y en a.
function Mailbox({ messagesNonLus }) { return ( <div> <h1>Bonjour !</h1> {messagesNonLus.length > 0 && ( <h2>Vous avez {messagesNonLus.length} message(s) non-lu(s).</h2> )} </div> );}Grâce à cette syntaxe, pas besoin de if, nous allons droit au but, et le code est très simple à lire.
Voici un second exemple qui affiche si un utilisateur est connecté ou non.
function Status({ estConnecte }) { return ( <div> L utilisateur {estConnecte ? "est actuellement" : "n'est pas"} connecté. </div> );}Le code est plus court et facile à relire.
Introduction aux jobs linux
Gagnez en rapidité avec les jobs
Écrivez plus vite en HTML avec Emmet
Ne vous embêtez plus avec les balises !
Supprimez les messages de connexion SSH au démarrage de session
Ne soyez plus embêté lorsque vous vous connectez sur vos machines
Générez automatiquement vos certificats SSL avec traefik (OVH)
Utilisez-le HTTPS sur docker !