"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Quelle est la différence entre `&` et `&&` en JavaScript ?

Quelle est la différence entre `&` et `&&` en JavaScript ?

Publié le 2024-11-02
Parcourir:786

 What\'s the Difference Between `&` and `&&` in JavaScript?

Explorer les différences entre & et && en JavaScript

Quelle est la distinction entre & et && ?

JavaScript utilise deux opérateurs distincts pour effectuer des opérations logiques : & et &&. Bien qu'ils semblent initialement similaires, leurs comportements diffèrent considérablement.

AND au niveau du bit (&)

& est connu sous le nom d'opérateur ET au niveau du bit. Il effectue des opérations au niveau du bit entre deux opérandes numériques, renvoyant ainsi un nombre. Cependant, il est rarement utilisé dans JavaScript en raison de son utilité limitée et de ses inconvénients en termes de performances.

Logical AND (&&)

&& est l'opérateur logique AND. Contrairement à &, il fonctionne sur n'importe quel type de données, y compris les valeurs numériques et booléennes. Il vérifie si tous les opérandes sont vrais et renvoie :

  • Le premier faux opérande s'il est rencontré.
  • Le dernier opérande si tous les opérandes sont véridiques.

Court-circuit dans &&

Une caractéristique essentielle de && est le court-circuit. Une fois qu'un faux opérande est trouvé, l'évaluation cesse et les opérandes restants sont ignorés. Cela permet à JavaScript d'optimiser le code en ignorant les calculs inutiles.

Cas d'utilisation pratiques

Bitwise AND (&)

  • Rarement utilisé en JavaScript, en particulier lorsque vous travaillez avec des données binaires ou une programmation de bas niveau.

ET logique (&&)

  • Évaluation conditionnelle : Vérifier si plusieurs conditions sont vraies.
  • Instructions If raccourcies : Remplacement des instructions if par && pour plus de concision.
  • Sortie anticipée : Terminer un bloc de code lorsqu'une fausse condition est rencontrée.
  • Coercition de type de données : Évaluation de la véracité des opérandes de différents types de données.

Exemples de code

const first  = 123;
const second = false;
const third  = 456;
const fourth = "abc";
const fifth  = true;

console.log(first & second); // 0
console.log(first & third);  // 72
console.log(first & fourth); // 0
console.log(first & fifth);  // 1

console.log(first && second); // false
console.log(first && third);  // 456
console.log(first && fourth); // abc
console.log(first && fifth);  // true

Conclusion

& (Bitwise AND) et && (Logical AND) sont des opérateurs distincts en JavaScript avec différents cas d'utilisation. & est rare, utilisé dans des scénarios spécifiques, tandis que && est polyvalent, permettant une évaluation conditionnelle et une optimisation efficaces grâce au court-circuit. Comprendre leurs différences est crucial pour maîtriser les capacités logiques de JavaScript.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3