Operadores

Operadores

Aritméticos

js
cria soma = 10 + 5     // 15
cria sub = 10 - 5      // 5
cria mult = 10 * 5     // 50
cria div = 10 / 5      // 2
cria resto = 10 % 3    // 1
cria pot = 2 ** 3      // 8

Comparação

js
10 == 10    // verdadeiro (igual)
10 != 5     // verdadeiro (diferente)
10 > 5      // verdadeiro
10 < 5      // falso
10 >= 10    // verdadeiro
10 <= 9     // falso

Existem também os estritos === e !==, e o operador de regex ~=:

js
"ana" ~= "^a"   // verdadeiro (regex)

Lógicos

js
verdadeiro && falso   // falso
verdadeiro || falso   // verdadeiro
!verdadeiro           // falso

Bitwise

js
5 & 3    // 1
5 | 3    // 7
5 ^ 3    // 6
~5       // -6
1 << 2   // 4
8 >> 1   // 4

Null coalescing e optional chaining

js
cria x = nulo ?? "padrão"    // "padrão"
cria y = obj?.campo          // nulo se obj for nulo

Atribuição composta

js
cria n = 10
n += 5    // 15
n -= 2    // 13
n *= 2    // 26
n /= 13   // 2
n %= 2    // 0
n++       // 1
n--       // 0

Ternário

js
cria status = idade >= 18 ? "maior" : "menor"

Spread

js
cria a = [1, 2]
cria b = [...a, 3]    // [1, 2, 3]