"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cuál es la diferencia entre `&` y `&&` en JavaScript?

¿Cuál es la diferencia entre `&` y `&&` en JavaScript?

Publicado el 2024-11-02
Navegar:831

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

Explorando las diferencias entre & y && en JavaScript

¿Cuál es la distinción entre & y &&?

JavaScript utiliza dos operadores distintos para realizar operaciones lógicas: & y &&. Si bien inicialmente parecen similares, sus comportamientos difieren significativamente.

Y bit a bit (&)

& se conoce como operador AND bit a bit. Realiza operaciones bit a bit entre dos operandos numéricos y devuelve un número como resultado. Sin embargo, rara vez se emplea en JavaScript debido a su utilidad limitada y sus inconvenientes de rendimiento.

Y lógico (&&)

&& es el operador AND lógico. A diferencia de &, opera con cualquier tipo de datos, incluidos valores numéricos y booleanos. Comprueba si todos los operandos son verdaderos y devuelve:

  • El primer operando falso si se encuentra.
  • El último operando si todos los operandos son verdaderos.

Cortocircuito en &&

Una característica esencial de && es el cortocircuito. Una vez que se encuentra un operando falso, la evaluación cesa y los operandos restantes se ignoran. Esto permite que JavaScript optimice el código omitiendo cálculos innecesarios.

Casos de uso prácticos

Y bit a bit (&)

  • Rara vez se usa en JavaScript, especialmente cuando se trabaja con datos binarios o programación de bajo nivel.

Y lógico (&&)

  • Evaluación condicional: Comprobar si varias condiciones son verdaderas.
  • Declaraciones If abreviadas: Reemplazar declaraciones if con && para mayor concisión.
  • Salida anticipada: Terminar un bloque de código cuando se encuentra una condición falsa.
  • Coerción de tipo de datos: Evaluación de operandos de diferentes tipos de datos para verificar su veracidad.

Ejemplos de código

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

Conclusión

& (Y bit a bit) y && (Y lógico) son operadores distintos en JavaScript con diferentes casos de uso. & es poco común y se utiliza en escenarios específicos, mientras que && es versátil y permite una evaluación y optimización condicional eficiente mediante cortocircuitos. Comprender sus diferencias es crucial para dominar las capacidades lógicas de JavaScript.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3