Puis-je gérer une “undefined” cas dans une instruction switch en JavaScript?
Si je suis de passage d'un objet à une instruction du cas, et il est un cas où il n'est pas défini, puis-je gérer ce cas? Si oui, alors comment? Si ce n'est pas possible, alors, quelle est la meilleure pratique pour la manipulation d'un indéfini cas d'un commutateur?
- Pourquoi ne pas
default
de travail dans ce cas? - c'est pourquoi je me demande SI.
- J'ai effectivement jamais entendu parler de MDN. Merci pour cela. Il sera utile pour les futurs JS questions.
- J'ai, j'ai juste ne pense pas que cela fonctionnerait avec un "non déclarées" de la valeur, et je voulais voir si quelqu'un ici serait de savoir. Mais apparemment, pas défini a 2 significations différentes dans le JS monde, celui qui travaille dans une instruction du cas, et un qui se casse au moment de l'exécution. Pas si intuitive..
- Est-il plus "fonctionnel" version d'une instruction switch?
- non, il n'y a
typeof var == 'undefined'
etvar === undefined
etvar == undefined
, qui ont tous des significations explicites. - ok, donc il y a un autre sens, je ne connaissais pas...
Vous devez vous connecter pour publier un commentaire.
Ajouter un
case
pourundefined
.Ou, si toutes les autres options sont épuisées, l'utilisation de la
default
.Remarque: Pour éviter les erreurs, la variable fournie à
switch
doit être déclaré mais peut avoir unundefined
valeur. Référence de cette violon et en savoir plus sur définis et indéfinis les variables en JavaScript.var myvar
. Sinon, vous obtiendrez une erreur.undefined
peut assigner une valeur à droite? Je veux dire est javascript après tout 😉Parsing error: The keyword 'undefined' is reserved
Bien, la plupart des appareils portables de façon serait de définir une nouvelle variable
undefined
dans votre fermeture, de cette façon, vous pouvez éviter totalement le cas quand quelqu'un neundefined = 1;
quelque part dans la base de code (global var), ce qui serait complètement bork la plupart des implémentations ici.En déclarant explicitement de la variable, vous éviter les problèmes d'intégration où vous dépendent de l'état global de la
undefined
variable...Si vous êtes en comparant les références de l'objet, mais la variable ne peut pas être attribué une valeur, il va travailler comme tout autre cas, à simplement utiliser
undefined
.0
.Depuis
undefined
est vraiment juste un autre valeur ('undefined' in window === true
), vous pouvez vérifier que.fonctionne à peu près droit.