"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Qual é a diferença entre os operadores \'&\' e \'&&\' em JavaScript?

Qual é a diferença entre os operadores \'&\' e \'&&\' em JavaScript?

Publicado em 2024-11-08
Navegar:124

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

A distinção entre operadores '&' e '&&' em JavaScript

Os operadores '&' e '&&' em JavaScript servem de forma distinta propósitos, cada um com seu próprio comportamento e cenários de uso.

'&' Operador AND bit a bit

'&' é o operador bit a bit Operador AND, usado principalmente em programação de baixo nível ou ao trabalhar com dados binários. Ele executa uma operação AND bit a bit entre dois operandos numéricos, resultando em um número. Se os operandos não forem números, eles serão forçados a números.

Exemplo:

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

'&&' Operador AND lógico

'&&' é o operador AND lógico, comumente usado para avaliar condições. Em seu uso convencional, ele verifica se ambos os operandos são verdadeiros e retorna verdadeiro em caso afirmativo, e falso caso contrário.

No entanto, em JavaScript, o comportamento do operador lógico AND se estende para permitir qualquer tipo de dados e um número arbitrário de operandos. Ele avalia os operandos em sequência e retorna:

  • O primeiro termo que é avaliado como falso
  • O último termo se todos os termos forem verdadeiros

Exemplo:

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

&&' Comportamento de curto-circuito

O operador '&&' exibe um comportamento de curto-circuito. Ao encontrar um operando falso-y, ele encerra a avaliação e retorna falso. Esta é uma técnica de otimização que pode melhorar a eficiência do código em determinados cenários.

Exemplo:

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

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

Portanto, '&' e '&&' desempenham funções diferentes em JavaScript. '&' é usado para operações bit a bit, enquanto '&&' é usado para avaliação lógica e geralmente substitui instruções if-else, oferecendo uma maneira concisa e eficiente de verificar condições.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3