Maison  >  Article  >  interface Web  >  Comment les opérateurs d'Elvis et de Safe Navigation protègent-ils les valeurs JavaScript ?

Comment les opérateurs d'Elvis et de Safe Navigation protègent-ils les valeurs JavaScript ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-04 01:20:03339parcourir

How do the Elvis and Safe Navigation Operators Protect JavaScript Values?

Protection des valeurs JavaScript : Elvis et les opérateurs de navigation sécurisés

En JavaScript, s'assurer que les variables ne sont pas nulles ou indéfinies est crucial pour éviter les erreurs. L'opérateur Elvis et l'opérateur de navigation sécurisée sont deux techniques qui peuvent vous aider dans cette tâche.

Opérateur Elvis : un raccourci conditionnel

Similaire à l'opérateur ternaire de Java, l'opérateur Elvis (?:) attribue une valeur par défaut si l'expression de gauche est résolue en faux, nul ou indéfini. Par exemple :

const displayName = user.name ?: "Anonymous";

Si user.name existe et n'est pas vide, displayName recevra sa valeur. Sinon, il sera par défaut "Anonyme".

Opérateur de navigation sécurisé : éviter les exceptions NullPointerExceptions

L'opérateur de navigation sécurisé (?.) empêche les exceptions NullPointerExceptions lors de l'accès aux propriétés potentiellement nulles. objets. Au lieu de lever une exception, il renvoie simplement null. Par exemple :

const streetName = user?.address?.street;

Si user ou user.address est nul, streetName restera nul. Cela protège contre les erreurs lors de l'accès aux propriétés d'objets inexistants.

Alternatives en JavaScript

Actuellement, JavaScript n'a pas d'opérateur Elvis. Au lieu de cela, vous pouvez utiliser l'opérateur OU logique (||) pour les affectations conditionnelles :

const displayName = user.name || "Anonymous";

Cependant, il n'existe pas d'équivalent direct pour l'opérateur de navigation sécurisée. Pour une fonctionnalité similaire, envisagez d'utiliser CoffeeScript, qui fournit un opérateur existentiel :

const zip = lottery.drawWinner?().address?.zipcode;

CoffeeScript propose également d'autres améliorations syntaxiques telles que des commentaires multilignes, des raccourcis de fonction et des appels de fonction « sexy ». Ces fonctionnalités peuvent améliorer la lisibilité et l'expressivité du code JavaScript.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn