Não consegui compreender muito bem a diferença entre os dois operadores. Alguém pode me explicar melhor quando usar cada um?
Não consegui compreender muito bem a diferença entre os dois operadores. Alguém pode me explicar melhor quando usar cada um?
Os operadores ||
e &&
são operadores de comparação, Ou seja, eles servem para testar se duas ou mais expressões são verdadeiras ou não.
O operador ||
, conhecido como "OR" (ou), retorna verdadeiro se pelo menos UMA das expressões fornecidas for verdadeira.
Exemplo:
if (true || false) {
alert('Está linha será executada!');
}
No caso acima, a instrução alert
será executada porque pelo menos uma das expressões é verdadeira (aquela à esquerda do operador).
Por outro lado, o operador &&
, também conhecido como "AND" (e), testa se as DUAS (ou mais) expressões comparadas são veridadeiras.
Exemplo:
if (true && false) {
alert('Está linha não será executada!');
}
if (true && true) {
alert('Está linha será executada!');
}
No primeiro exemplo, a instrução alert
não será executada, já que uma das expressões comparadas é falsa.
Mais alguns exemplos:
if (1 > 0 && 2 === 2) {
alert('Está linha será executada!');
}
if (1 > 0 || 2 >= 0) {
alert('Está linha será executada!');
}
let teste = 'falso';
let teste_dois = 'verdadeirio';
if (teste === 'falso' && teste === teste_dois) {
alert('Está linha não será executada!');
}