Maison  >  Article  >  interface Web  >  Explication détaillée des exemples d'utilisation de deux points d'exclamation dans les compétences javascript_javascript

Explication détaillée des exemples d'utilisation de deux points d'exclamation dans les compétences javascript_javascript

WBOY
WBOYoriginal
2016-05-16 16:37:091370parcourir

!! est souvent vu dans le code JavaScript. Cet article utilisera des exemples pour analyser en profondeur l'utilisation de deux points d'exclamation en JavaScript. Partagez-le avec tout le monde pour votre référence. L'analyse spécifique est la suivante :

!! en JavaScript est un "non" logique, c'est-à-dire qu'il s'agit encore d'un "non" basé sur le "non" logique. De nombreux types peuvent être convertis en types booléens via ! ou !!, et d'autres jugements peuvent alors être effectués.

1. Scénario d'application : Déterminer si un objet existe

Supposons qu'il existe un tel objet json :

{ color: "#E3E3E3", "font-weight": "bold" }

Si vous avez besoin de déterminer s'il existe, utilisez !!.

Si vous imprimez simplement l'objet, vous ne pouvez pas déterminer s'il existe :

var temp = { color: "#A60000", "font-weight": "bold" };
alert(temp);

Résultat : [objet : Objet]

Si vous implémentez ! ou !! sur l'objet json, vous pouvez déterminer si l'objet json existe :

var temp = { color: "#A60000", "font-weight": "bold" };
alert(!temp);

Résultat : faux

var temp = { color: "#A60000", "font-weight": "bold" };
alert(!!temp);

Résultat : vrai

2. La convention de conversion de différents types en types booléens via ou !!

1. Renvoie vrai pour "non" de null

var temp = null;
alert(temp); 
Résultat : nul

var temp = null;
alert(!temp); 
Résultat : vrai

var temp = null;
alert(!!temp); 
Résultat : faux

2. Renvoie vrai pour un "non" non défini

var temp;
alert(temp);
Résultat : non défini

var temp;
alert(!temp);
Résultat : vrai

var temp;
alert(!!temp);
Résultat : faux

3. Renvoie vrai pour "pas" dans la chaîne vide

var temp="";
alert(temp);
Résultat : vide

var temp="";
alert(!temp);
Résultat : vrai

var temp="";
alert(!!temp);
Résultat : faux

4. Renvoie false pour "not" de type entier non nul

var temp=1;
alert(temp);
Résultat : 1

var temp=1;
alert(!temp);
Résultat : faux

var temp=1;
alert(!!temp);
Résultat : vrai

5. Renvoie vrai pour "pas" de 0

var temp = 0;
alert(temp);

Résultat : 0

var temp = 0;
alert(!temp);
Résultat : vrai

var temp = 0;
alert(!!temp);
Résultat : faux

6. Renvoie false pour "pas" dans la chaîne

var temp="ab";
alert(temp);
Résultat : ab

var temp="ab";
alert(!temp);
Résultat : faux

var temp="ab";
alert(!!temp);
Résultat : vrai

7. Renvoie false pour "pas" dans le tableau

var temp=[1,2];
alert(temp);
Résultats : 1,2

var temp=[1,2];
alert(!temp);
Résultat : faux

var temp=[1,2];
alert(!!temp);
Résultat : vrai

Je crois que ce qui est décrit dans cet article a une certaine valeur de référence pour l'apprentissage par chacun de la programmation JavaScript.

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