Maison  >  Article  >  interface Web  >  Utilisation alternative des compétences && et ||_javascript de Javascript

Utilisation alternative des compétences && et ||_javascript de Javascript

WBOY
WBOYoriginal
2016-05-16 16:41:211134parcourir

Je n’ai pas eu beaucoup de temps pour écrire des articles ces derniers temps, j’ai l’impression d’être toujours occupée par des choses, haha. Cependant, j'ai recommencé à étudier Titanium ces jours-ci et j'ai trouvé que son framework officiel MVC (Alloy) était plutôt bon. Au début, j'ai souffert du manque de bon code à apprendre et du manque de documentation, donc je ne l'ai jamais étudié en détail. . Plus tard, j'ai découvert que le CodeStrong officiel est un très bon ensemble de codes pour apprendre. Tant que vous comprenez l'ensemble des codes, je pense que vous pouvez essentiellement utiliser Alloy~

.

En regardant son code source, j'ai découvert qu'une utilisation telle que la suivante est utilisée dans de nombreux endroits :

$.clouds && ($.index.add($.clouds));

Je ne l'ai pas très bien compris au début. Après tout, cette méthode est rarement utilisée. Après une recherche sur Google, j'ai réalisé que cette méthode d'écriture est très pratique et simple à utiliser (en fait, cette méthode l'est aussi. largement utilisé dans le code source de jquery). Ce qui suit est une citation d'une explication trouvée en ligne expliquant les utilisations alternatives de && et || en JavaScript :

a() && b() : Si true est renvoyé après l'exécution de a(), b() est exécuté et la valeur de b est renvoyée si false est renvoyée après l'exécution de a(), l'expression entière ; renvoie la valeur a(), b() n'est pas exécuté

a() || b() : Si true est renvoyé après l'exécution de a(), l'expression entière renvoie la valeur de a(), et b() n'est pas exécuté si false est renvoyé après l'exécution ; a(), Puis exécutez b() et renvoie la valeur de b();

&& a une priorité plus élevée que ||

Après avoir lu ceci, c'est assez clair. Regardons le code spécifique :

alert((1 && 3 || 0) && 4); //结果4 ①
alert(1 && 3 || 0 && 4); //结果3 ②
alert(0 && 3 || 1 && 4); //结果4 ③ 

Analyse :
Instruction ① : 1&&3 renvoie 3 => 3 || 0 renvoie 3 => Instruction ② : exécutez d'abord 1&&3 pour renvoyer 3, puis exécutez 0&&4 pour renvoyer 0, et enfin comparez les résultats de l'exécution avec 3||0 pour renvoyer 3
Instruction ③ : exécutez d'abord 0&&3 pour renvoyer 0, puis exécutez 1&&4 pour renvoyer 4, et enfin comparez les résultats de l'exécution avec 0||4 pour renvoyer 4

Remarque : les entiers non nuls sont tous vrais, les chaînes indéfinies, nulles et vides "" sont fausses.

J'ai l'impression que javascript est vraiment puissant et flexible, haha~~

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