Pular para o conteúdo principal

Operadores Aritméticos

Os operadores numéricos padrões são suportados, incluindo adição, subtração, módulo (ou resto) aritmético e assim por diante.

Adição (+)

A operação de adição envolve dois operandos e resulta na diferença entre o primeiro e o segundo operando identificados. Ex:

// Number + Number -> Adição
1 + 2 // 3

// Boolean + Number -> Adição
true + 1 // 2

// Boolean + Boolean -> Adição
false + false // 0

// Number + String -> Concatenação
5 + "texto" // "5texto"

// String + Boolean -> Concatenação
"texto" + false // "textofalse"

// String + String -> Concatenação
"texto" + " qualquer" // "texto qualquer"

Subtração (-)

A operação de subtração envolve dois operandos e resulta na diferença entre o primeiro e o segundo operando identificados. Ex:

5 - 3 // 2
3 - 5 // -2
"texto" - 3 // NaN (Not a Number: não é um número)

Divisão (/)

O operador de divisão produz o quociente de seus operandos, onde o operando da esquerda é o dividendo e o da direita é o divisor. Ex:

1 / 2      // retorna 0.5 em JavaScript
1 / 2 // retorna 0 em Java
// (nenhum dos números é explicitamente um número de ponto flutuante)

1.0 / 2.0 // retorna 0.5 em JavaScript e Java

2.0 / 0 // retorna Infinity em JavaScript
2.0 / 0.0 // retorna Infinity também
2.0 / -0.0 // retorna -Infinity em JavaScript

Multiplicação (*)

O operador de multiplicação produz o produto dos operandos. Ex:

2 * 2 // 4
-2 * 2 // -4
Infinity * 0 // NaN
Infinity * Infinity // Infinity
"texto" * 2 // NaN

Módulo (%)

A função módulo é capaz de retornar o resto inteiro da divisão entre dois operandos. Ex:

12 % 5 // 2
-1 % 2 // -1
NaN % 2 // NaN

Operações matemáticas avançadas

Há também um objeto embutido na linguagem, chamado Math, capaz de manipular funções e constantes matemáticas mais avançadas. Ex:

Math.PI // retorna o valor de PI
Math.sin(3.5); // seno de 3.5
Math.cos(3.5); // cosseno de 3.5
Math.random(); // retorna um valor randômico
Math.sqrt(25) // retorna o valor referente à raiz quadrada de 25

Conversões e coerções(parseInt, parseFloat, +)

Em diversas situações de entrada de dados, precisamos converter dados textuais para formatos numéricos. A seguir, alguns exemplos são listados:

parseInt('10') // tranforma o texto '10' no valor inteiro 10
parseFloat('10') // tranforma o texto '10' no valor decimal (com ponto flutuante) 10

Você também pode usar o operador unário + para converter valores em números. Essa também é conhecida como sendo uma operação de coerção de valores: Ex:

+'3.1415' // 3.1415 como valor numérico flutuante