Skip to content

Cunhaww-dev/Operadores

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Operadores de Comparação

Servem para comparar dois valores, os principais são:

  • >, <, >=, <=, === (estritamente igual)
  • !== (estritamente diferente).

O uso de === (igualdade estrita) é a prática recomendada em JavaScript.


Operadores Lógicos

Servem para combinar duas ou mais expressões booleanas.

  • && (AND): Retorna true somente se ambas as expressões forem verdadeiras.
  • || (OR): Retorna true se pelo menos uma das expressões for verdadeira.

Exemplos Práticos

Exemplo (Operador && - AND)

Verifica se uma pessoa pode dirigir com base na idade e na posse de CNH.

const idade = 18;
const possuiCNH = true;

if (idade >= 18 && possuiCNH === true) {
    console.log('pode dirigir');
} else {
    console.log('não pode dirigir');
}

Exemplo (Operador || - OR)

Verifica se uma pessoa pode se aposentar com base na idade ou no número de contribuições.

const idade = 60;
const contribuicoes = 180;

if (idade >= 60 || contribuicoes >= 180) {
    console.log('pode aposentar');
} else {
    console.log('não pode aposentar');
}

Conversão Implícita de Valores (Truthy e Falsy)

Em contextos lógicos, o JavaScript converte valores para true (truthy) ou false (falsy).

Valores Falsy: false, 0, "", null, undefined, NaN.

Valores Truthy: Todos os outros valores (como true, números diferentes de zero, strings não vazias).


Operador de Negação (!)

O operador ! (NOT) inverte o valor lógico de uma expressão.

Ele transforma true em false e false em true.

const cnhEhValida = true;

if (!cnhEhValida) { // Lê-se: "Se CNH *não* é válida"
    console.log('não pode dirigir'); 
}

Operador Ternário e Operador Condicional

O Operador Condicional (popularmente conhecido como Operador Ternário) é uma forma concisa de substituir o if e else, especialmente quando precisamos retornar um valor com base em uma condição.

Ele é chamado de "ternário" por possuir três operandos:

  • A Condição (que será avaliada como truthy ou falsy).
  • O Valor se Verdadeiro (executado se a condição for truthy, vem depois do ?).
  • O Valor se Falso (executado se a condição for falsy, vem depois do :).

Exemplo: Atribuindo um valor

Queremos definir uma saudação com base na existência de um nome.

const nome = 'Fernando';

// CONDIÇÃO ? VALOR_TRUE : VALOR_FALSE
const saudacao = nome ? `olá, ${nome}` : 'olá, pessoa';

console.log(saudacao); // Saída: olá, Fernando

Se nome for truthy (como uma string preenchida), saudacao recebe olá, ${nome}. Se nome for falsy (como null ou undefined), recebe olá, pessoa.

Comparando com if/else

O ternário torna o código mais fluido e direto. A mesma lógica com if/else seria mais extensa:

const nome = "Fernando";
let saudacao; // Precisa ser 'let' e declarada fora

if (nome) {
    saudacao = `olá, ${nome}`;
} else {
    saudacao = 'olá, pessoa';
}

Exemplo: Executando funções

O operador ternário não precisa estar ligado a uma variável, ele pode simplesmente executar ações:

// Se 'nome' existir, chama saudar(nome), senão chama saudar('pessoa')
nome ? saudar(nome) : saudar('pessoa');

Switch-Case

O switch-case é uma estrutura condicional usada como alternativa para múltiplos blocos else if.

Ele é ideal quando temos uma lista de possibilidades baseada em um único valor de entrada (e não em expressões booleanas complexas).

Exemplo: Usando Switch-Case

Vamos verificar uma avaliação (nota de 1 a 5).

const avaliacao = 2;

switch (avaliacao) { // O valor a ser verificado entra aqui
    case 5:
        console.log('avaliação ótima');
        break; // O 'break' impede a execução dos 'cases' seguintes
    case 4:
        console.log('avaliação boa');
        break;
    case 3:
        console.log('avaliação neutra');
        break;
    
    // 'default' funciona como o 'else'
    default:
        console.log('avaliação baixa');
        break;
}
// Saída: avaliação baixa

Pontos importantes do Switch:

  • Break: É essencial usar break ao final de cada case. Se esquecido, o JavaScript executa o case correspondente E todos os cases abaixo dele (isso é chamado de fall-through).
  • Default: É o bloco executado se nenhum case corresponder ao valor de entrada (similar ao else).
  • Limitação: O switch compara valores diretos (ex: case 5). Ele não aceita expressões lógicas nos cases (ex: case avaliacao > 4).

About

Anotações e códigos baseados em estudos sobre Operadores em JavaScript

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published