Objetivos
        
    
    
    
        
Expressões e operadores
    
    
        
            
                Para declararmos expressões em qualquer linguagem de programação precisamos utilizar operadores. 
                Os conceitos de expressões e operadores já foram vistos em 
                Portugol: Expressões e Operadores e 
                Tutorial C: Operadores. Em caso de dúvida, é recomendado a leitura.
            
            
                Para criação de expressões em JS, precisamos utilizar como base para criação os chamados 
                operadores. A seguir vamos aprender os operadores de atribuição, aritmético, lógico, 
                comparação e bitwise/bit-a-bit fornecidos pela linguagem JS.
            
         
     
    
        
Operadores de atribuição
    
    
        
            
                Para a atribuição de valores ou expressões à variáveis, JS fornece a lista de operadores abaixo:
            
            
                Tab. 1: Operadores de Atribuição
                
                    
                        | Operador | 
                        Descrição | 
                        Exemplo | 
                    
                
                
                    
                        | = | 
                        Atribuição | 
                        a = b | 
                    
                    
                        | += | 
                        Atribuição acumulativa de adição | 
                        a-b | 
                    
                    
                        | -= | 
                        Atribuição acumulativa de subtração | 
                        a/=b | 
                    
                    
                        | *= | 
                        Atribuição acumulativa de multiplicação | 
                        a*=b | 
                    
                    
                        | %= | 
                        Atribuição acumulativa de Módulo | 
                        a%=b | 
                    
                    
                        | /= | 
                        Acumulação de divisão | 
                        a/=b | 
                    
                
            
            Sintaxe
            variavel1 = valor | expressao
variavel1 operador= valor
            Exemplo 1
            
let a = 1
let b = 2
a+=b;
console.log(a);
a-=b;
console.log(a);
a*=b;
console.log(a);
a/=b;
console.log(a);
            Saída
            
3
1
2
1.0
         
     
    
    
        
            
                Para realizarmos cálculos matemáticos ou criarmos expressões matemáticas a linguagem JS fornece 
                os operadores aritméticos abaixo:
            
         
     
    
        
            
                Tab. 2: Operadores de Aritméticos
                
                    
                        | Operador | 
                        Descrição | 
                        Exemplo | 
                    
                
                
                    
                        | + | 
                        Adição | 
                        a+b | 
                    
                    
                        | - | 
                        Subtração | 
                        a-b | 
                    
                    
                        | * | 
                        Multiplicação | 
                        a*b | 
                    
                    
                        | / | 
                        Divisão | 
                        a/b | 
                    
                    
                        | % | 
                        Módulo | 
                        a%b | 
                    
                    
                        | ** | 
                        Pontência | 
                        a**b | 
                    
                    
                        | ++ | 
                        Incremento | 
                        ++a , a++ | 
                    
                    
                        | -- | 
                        Decremento | 
                        --a, a-- | 
                    
                
            
            
                Os operadores -- e ++ utilizados antes ou depois da variável são chamados pré incrementado e pós 
                incrementado. O funcionamento desses operadores foi discutido 
                Portugol: Operadores Aritméticos.
            
            Sintaxe
            valor1 | expressao operador valor2 | expressao2
            Exemplo 2
            
let a=10;
let b=5;
let x = a + b;
console.log(x);
x=a-b;
console.log(x);
x=a*b;
console.log(x);
x=a/b;
console.log(x);
x=a % b;
console.log(x);
x=a**b;
console.log(x);
            Saída
            15
5
50
2
0
100000
         
     
    
    
        
            
                Para declararmos expressões de comparação, JS fornece os operadores relacionais abaixo que 
                retornam true, em caso verdadeiro ou false, caso contrário. 
                O funcionamento desses operadores foi discutido 
                Portugol: Operadores Aritméticos.
            
            
                Tab. 3: Operadores Relacionais
                
                    
                        | Operador | 
                        Descrição | 
                        Exemplo | 
                    
                
                
                    
                        | == | 
                        Igual | 
                        a == b | 
                    
                    
                        | >= | 
                        Maior ou igual | 
                        a >= b | 
                    
                    
                        | <= | 
                        Menor ou igual | 
                        a <= b | 
                    
                    
                        | != | 
                        Diferente | 
                        a != b | 
                    
                    
                        | > | 
                        Maior | 
                        a>b | 
                    
                    
                        | === | 
                        Igual e mesmo tipo | 
                        a === b | 
                    
                
            
            Sintaxe
            valor1 | expressao operador valor2 | expressao2
            Exemplo 3
            
let a=10
let b=5
let x = a==b;
console.log(x);
x= a>b;
console.log(x);
x= a<b;
console.log(x);
x= a>=b;
console.log(x);
x= a<=b;
console.log(x);
x= a!=b;
console.log(x);
            Saída
            False
True
False
True
False
True
         
     
    
    
        
            
                Para criarmos expressões lógicas, a linguagem JS fornece os operadores relacionais abaixo que 
                retorna true, em caso verdadeiro ou false, caso contrário. O funcionamento desses operadores foi discutido 
                Portugol: Operadores Aritméticos.
            
            
                Tab. 4: Operadores lógicos
                
                    
                        | Operador | 
                        Significado | 
                        Exemplo | 
                    
                
                
                    
                        | && | 
                        E lógico | 
                        a && b | 
                    
                    
                        | ! | 
                        Não lógico | 
                        !a | 
                    
                    
                        | || | 
                        OR lógico | 
                        a || b | 
                    
                
            
            Sintaxe
            valor1 | expressao operador valor2 | expressao2
            Exemplo 4
            
let a=True;
let b=False;
let x = a && b;
console.log(x);
x= a || b;
console.log(x);
x = !a;
console.log(x);
            Saída
            False
True
False
         
     
    
        Operadores bit-a-bit/bitwise
        
     
    
        
            
                Os seguintes operadores bit-a-bit estão disponíveis na linguagem JS. Esse operadores aplicam 
                operações em cada bit de um valor. O funcionamento básico pode ser visto em 
                Tutorial C: Operadores bit-a-bit sendo
                a leitura recomendada.
            
            
                Tab. 5: Operadores bitwise
                
                    
                        | Operador | 
                        Descrição | 
                        Exemplo | 
                    
                
                
                    
                        | & | 
                        E bit-a-bit | 
                        a & b | 
                    
                    
                        | | | 
                        OR bit-a-bit | 
                        a | b | 
                    
                    
                        | ~ | 
                        Não bit-a-bit | 
                        ~a | 
                    
                    
                        | >> | 
                        Desloca N bits à direita(Sinalizado) | 
                        a>>b | 
                    
                    
                        | << | 
                        Desloca N bits à esquerda | 
                        a<<b | 
                    
                    
                        | >>> | 
                        Desloca N bits à direita(não-sinalizado) | 
                        a >>> b | 
                    
                
            
            Sintaxe
             valor1 | expressao1 operador valor1 | expressao2
            Exemplo 5
            
let a=1;
let b=2;
let x = a&b;
console.log(x);
x= a|b;
console.log(x);
x = ~b;
console.log(x);
console.log(4>>1);
console.log(2<<1);
            Saída
            0
3
-3
2
4
         
     
    
    
        
            
                Abaixo a tabela contém outros operadores JS que não se encaixam nos grupos estudados acima. Mais 
                operadores serão adicionadas em futuras atualizações.
            
            
                Tab. 6: Outros Operadores
                
                    
                        | Operador | 
                        Descrição | 
                        Exemplo | 
                    
                
                
                    
                        | typeof | 
                        Retorna tipo de variável | 
                        typedef(a) | 
                    
                    
                        | instanceof | 
                        Retorna nome da classe | 
                        instanceof(a) | 
                    
                    
                        | ? | 
                        if ternário | 
                        a > b ? c : d; | 
                    
                    
                        yield | 
                        - | 
                        yield*b | 
                    
                    
                        ... | 
                        - | 
                        ...a | 
                    
                    
                        | ?? | 
                        Nulidade | 
                        a ?? b | 
                    
                    
                        : | 
                        - | 
                        a:5 | 
                    
                    
                        | () | 
                        Parâmetros/Argumentos | 
                        (a,b) | 
                    
                    
                        | [] | 
                        Indexador | 
                        [a] | 
                    
                    
                        | eval | 
                        Computar expressão | 
                        eval("1 + 2*c") | 
                    
                
            
            Exemplo 6
            
console.log(typeof(true));
let a = 1 > 0 ? 1 : -1;
console.log(a);
let b = new Number(100)
console.log(b instanceof Number);
            Saída
            boolean
1
true
            
                Computando expressões com eval
                
             
            
                
                    
                        A linguagem JS fornece uma forma de executarmos expressões contidas ou declaradas como
                        string. Essa forma é utilizando a função eval como na sintaxe abaixo:
                    
                    Sintaxe
                    eval("expressao");
                    Exemplo 5
                    
let expressao = "2*2 + 6";
console.log(eval(expressao));
                    Saída
                    10
                    
                        A função eval também é capaz de executar expressões mais complexas envolvendo 
                        arrays, objetos e outros.
                    
                    Exemplo 6
                    
let a = 1;
let b = 2;
let c = [2,4,6];
let obj = {
  metodo: function(){
    return 2;
  }
}
let expressao = "a*b + (6/c[0]) - obj.metodo() + Math.pow(2,2)";
console.log(eval(expressao));
                    Saída
                    7
                 
             
         
     
    
        Histórico de atualizações
        
     
    
        
            
                - 14/08/2025 - revisão 3 - Ajustes: pontuais, target de links internos, sintaxes e 'Objetivos'
 
                - 26/09/2024 - revisão 2 - Adição: Ex.6; Correção: links portugol; Ajustes gramaticais pontuais, outros ajustes
 
                - 05/10/2023 - revisão 1 - Correção em layout, navegação e erros gramaticais
 
                - 31/05/2023 - versão inicial
 
            
         
     
    
            
            
                
                    
                    Os cursos oferecidos nesta página são cursos fornecidos por parceiros. Ao comprar um curso clicando
                em seu banner, você está ajudando a manter o projeto TutorialDev vivo. Os sites dos cursos parceiros utilizam cookies.