Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Dúvida operador lógico

Não entendi porque o loop não funciona corretamente quando utilizamos o operador lógico || (OR).

2 respostas
solução!

Olá, Reginaldo! Tudo bem?

Pelo que entendi, você está com dúvidas sobre o operador lógico OR (||) no contexto de um loop. No exemplo que você está estudando, o operador lógico OR é usado na seguinte condição:

if (tipo !== "object" && tipo !== "function") {
    console.log(`A chave ${chave} tem o valor ${cliente[chave]}`);
}

Nesse caso, a condição está verificando se a variável tipo é diferente de "object" E também é diferente de "function". Ambas as condições precisam ser verdadeiras para que o bloco de código dentro do if seja executado.

Se você quisesse usar o operador lógico OR (||) nesse contexto, a condição verificaria se tipo é diferente de "object" OU se é diferente de "function". Isso significa que se qualquer uma dessas condições for verdadeira, o bloco de código dentro do if será executado.

Veja como ficaria:

if (tipo !== "object" || tipo !== "function") {
    console.log(`A chave ${chave} tem o valor ${cliente[chave]}`);
}

No entanto, essa condição sempre será verdadeira, pois tipo não pode ser "object" e "function" ao mesmo tempo. Portanto, o bloco de código dentro do if sempre será executado, independentemente do valor de tipo.

Espero que isso esclareça sua dúvida sobre o operador lógico OR (||). Lembre-se de que ele verifica se qualquer uma das condições é verdadeira, enquanto o operador lógico AND (&&) verifica se todas as condições são verdadeiras.

Espero ter ajudado e bons estudos!

Muito obrigado Matheus. Foi bastante esclarecedor!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software