Maison >interface Web >js tutoriel >Quelle est la différence entre les opérateurs \'&\' et \'&&\' en JavaScript ?

Quelle est la différence entre les opérateurs \'&\' et \'&&\' en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-30 00:13:03768parcourir

What's the Difference Between the '&' and '&&' Operators in JavaScript?

La distinction entre les opérateurs '&' et '&&' en JavaScript

Les opérateurs '&' et '&&' en JavaScript servent des à des fins, chacun avec son propre comportement et ses propres scénarios d'utilisation.

'&' Opérateur ET au niveau du bit

'&' est l'opérateur ET au niveau du bit, principalement utilisé dans les applications de bas niveau. programmation ou lorsque vous travaillez avec des données binaires. Il effectue une opération ET au niveau du bit entre deux opérandes numériques, ce qui donne un nombre. Si les opérandes ne sont pas des nombres, ils sont contraints à devenir des nombres.

Exemple :

const first = 123;
const second = true;
console.log(first & second); // 72 (bit-wise AND operation)

'&&' Opérateur ET logique

'&& ' est l'opérateur logique ET, couramment utilisé pour évaluer les conditions. Dans son utilisation conventionnelle, il vérifie si les deux opérandes sont vrais et renvoie vrai si c'est le cas, et faux sinon.

Cependant, en JavaScript, le comportement de l'opérateur logique ET s'étend pour autoriser n'importe quel type de données et un nombre arbitraire. d'opérandes. Il évalue les opérandes dans l'ordre et renvoie :

  • Le premier terme qui est évalué comme faux
  • Le dernier terme si tous les termes sont vrais-y

Exemple :

const first = true;
const second = false;
const third = "abc";
console.log(first && second && third); // false (returns the first false-y operand)

&&' Comportement de court-circuit

L'opérateur '&&' présente un comportement de court-circuit. Une fois qu'il rencontre un opérande faux-y, il termine l'évaluation et renvoie faux. Il s'agit d'une technique d'optimisation qui peut améliorer l'efficacité du code dans certains scénarios.

Exemple :

const user = { isLoggedIn: () => false };
const message = user.isLoggedIn() && alert("Hello!");

// Equivalent to:
if (user.isLoggedIn()) {
  alert("Hello!");
}

Par conséquent, « & » et « && » remplissent des rôles différents en JavaScript. '&' est utilisé pour les opérations au niveau du bit, tandis que '&&' est utilisé pour l'évaluation logique et remplace généralement les instructions if-else, offrant un moyen concis et efficace de vérifier les conditions.

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