Aritmética JavaScript
Operadores aritméticos JavaScript
Os operadores aritméticos executam aritmética em números (literais ou variáveis).
Operator | Description |
---|---|
+ | Addition |
- | Subtraction |
* | Multiplication |
** | Exponentiation (ES2016) |
/ | Division |
% | Modulus (Remainder) |
++ | Increment |
-- | Decrement |
Operaçoes aritimeticas
Uma operação aritmética típica opera em dois números.
Os dois números podem ser literais:
Exemplo
let x = 100 + 50;
ou variáveis:
Exemplo
let x = a + b;
ou expressões:
Exemplo
let x = (100 + 50) * a;
Operadores e Operandos
Os números (em uma operação aritmética) são chamados de operandos .
A operação (a ser realizada entre os dois operandos) é definida por um operador .
Operando | Operador | Operando |
---|---|---|
100 | + | 50 |
Adicionando
O operador de adição+
( ) adiciona números:
Exemplo
let x = 5;
let y = 2;
let z = x + y;
Subtração
O operador de subtração-
( ) subtrai números.
Exemplo
let x = 5;
let y = 2;
let z = x - y;
Multiplicação
O operador de multiplicação*
( ) multiplica números.
Exemplo
let x = 5;
let y = 2;
let z = x * y;
Dividindo
O operador de divisão/
( ) divide números.
Exemplo
let x = 5;
let y = 2;
let z = x / y;
Restante
O operador de módulo%
( ) retorna o resto da divisão.
Exemplo
let x = 5;
let y = 2;
let z = x % y;
Em aritmética, a divisão de dois inteiros produz um quociente e um resto .
Em matemática, o resultado de uma operação de módulo é o resto de uma divisão aritmética.
Incrementando
O operador de incremento++
( ) incrementa números.
Exemplo
let x = 5;
x++;
let z = x;
Decrementando
O operador de decremento--
( ) decrementa números.
Exemplo
let x = 5;
x--;
let z = x;
Exponenciação
O operador de exponenciação**
( ) eleva o primeiro operando à potência do segundo operando.
Exemplo
let x = 5;
let z =
x ** 2; // result is 25
x ** y produz o mesmo resultado que Math.pow(x,y)
:
Exemplo
let x = 5;
let z =
Math.pow(x,2); // result is 25
operador precedente
A precedência do operador descreve a ordem em que as operações são executadas em uma expressão aritmética.
Exemplo
let x = 100 + 50 * 3;
O resultado do exemplo acima é igual a 150 * 3, ou é igual a 100 + 150?
A adição ou a multiplicação é feita primeiro?
Como na matemática escolar tradicional, a multiplicação é feita primeiro.
A multiplicação ( *
) e a divisão ( /
) têm maior precedência do que a adição ( +
) e a subtração ( -
).
E (como na matemática escolar) a precedência pode ser alterada usando parênteses:
Exemplo
let x = (100 + 50) * 3;
Ao usar parênteses, as operações dentro dos parênteses são calculadas primeiro.
Quando muitas operações têm a mesma precedência (como adição e subtração), elas são calculadas da esquerda para a direita:
Exemplo
let x = 100 + 50 - 3;
Valores de precedência do operador JavaScript
As entradas em vermelho claro indicam ECMAScript 2015 (ES6) ou superior.
Valor | Operador | Descrição | Exemplo |
---|---|---|---|
21 | ( ) | Agrupamento de expressão | (3 + 4) |
20 | . | Membro | pessoa.nome |
20 | [] | Membro | pessoa["nome"] |
20 | () | Chamada de função | minhaFunção() |
20 | novo | Crio | Nova data() |
18 | ++ | Incremento pós-fixado | i++ |
18 | -- | Decremento pós-fixado | eu-- |
17 | ++ | Incremento de prefixo | ++i |
17 | -- | Decremento de prefixo | --eu |
17 | ! | Lógico não | !(x==y) |
17 | tipo de | Modelo | tipo de x |
16 | ** | Exponenciação (ES2016) | 10 ** 2 |
15 | * | Multiplicação | 10 * 5 |
15 | / | Divisão | 10/5 |
15 | % | Restante da Divisão | 10% 5 |
14 | + | Adição | 10 + 5 |
14 | - | Subtração | 10 - 5 |
13 | << | Deslocar para a esquerda | x << 2 |
13 | >> | Deslocar para a direita | x >> 2 |
13 | >>> | Deslocar para a direita (sem sinal) | x >>> 2 |
12 | < | Menor que | x < y |
12 | <= | Menor ou igual | x <= y |
12 | > | Maior que | x > y |
12 | >= | Maior ou igual | x >= y |
12 | dentro | Propriedade no objeto | "PI" em matemática |
12 | instancia de | Instância do Objeto | instância de Array |
11 | == | Igual | x == y |
11 | === | Estrita igual | x === y |
11 | != | Desigual | x != y |
11 | !== | Estrita desigual | x !== y |
10 | & | E bit a bit | x & y |
9 | ^ | XOR bit a bit | x ^ y |
8 | | | OU bit a bit | x | S |
7 | && | E Lógico | x && y |
6 | || | OU lógico | x || S |
5 | ?? | Nullish Coalescing | x?? S |
4 | ? : | Doença | ? "Sim não" |
3 | += | Atribuição | x += y |
3 | /= | Atribuição | x /= y |
3 | -= | Atribuição | x -= y |
3 | *= | Atribuição | x *= y |
3 | %= | Atribuição | x %= y |
3 | <<= | Atribuição | x <<= y |
3 | >>= | Atribuição | x >>= y |
3 | >>>= | Atribuição | x >>>= y |
3 | &= | Atribuição | x &= y |
3 | ^= | Atribuição | x ^ = y |
3 | |= | Atribuição | x |= y |
2 | colheita | Função de pausa | rendimento x |
1 | , | Vírgula | 5, 6 |
As expressões entre parênteses são totalmente computadas antes que o valor seja usado no restante da expressão.