Operadores de atribuição em JavaScript

Introdução ao JavaScript / Tutorial JavaScript

Os operadores de atribuição no JavaScript são usados para atribuir valores a variáveis. O operador de atribuição mais básico é o = (igual), mas existem outros operadores que combinam atribuição com operações aritméticas ou lógicas.

SímboloNome do OperadorDescrição
=Atribuição simplesAtribui um valor a uma variável.
+=Atribuição de adiçãoSoma e atribui o resultado à variável.
-=Atribuição de subtraçãoSubtrai e atribui o resultado à variável.
*=Atribuição de multiplicaçãoMultiplica e atribui o resultado à variável.
/=Atribuição de divisãoDivide e atribui o resultado à variável.
%=Atribuição de móduloCalcula o módulo e atribui à variável.
**=Atribuição de exponenciaçãoCalcula a potência e atribui à variável.

Equivalência com os operadores aritméticos

Os operadores de atribuição combinados permitem realizar operações aritméticas e atribuir o resultado à mesma variável de forma simplificada. A tabela abaixo mostra a equivalência entre os operadores de atribuição e suas formas expandidas:

OperadorExemploEquivalência
+=x += 10x = x + 10
-=x -= 10x = x - 10
*=x *= 10x = x * 10
/=x /= 10x = x / 10
%=x %= 10x = x % 10
**=x **= 10x = x ** 10

Atribuindo valores com o operador =

O operador = é usado para atribuir um valor a uma variável:

let x = 10 // Atribui o valor 10 à variável x

Somando com o operador +=

O operador += permite somar um valor a uma variável e atribuir o resultado à própria variável de forma simplificada. Ele é equivalente a usar o operador de soma (+) seguido de uma atribuição (=).

let x = 10

// Soma (x + 5) e guarda o valor em x
x += 5

// Imprime o valor de x
console.log(x)

Saída:

15

Subtraindo com o operador -=

O operador -= permite subtrair um valor de uma variável e atribuir o resultado à própria variável de forma simplificada. Ele é equivalente a usar o operador de subtração (-) seguido de uma atribuição (=).

let x = 10

// Subtrai (x - 3) e guarda o valor em x
x -= 3

// Imprime o valor de x
console.log(x)

Saída:

7

Multiplicando com o operador *=

O operador *= permite multiplicar uma variável por um valor e atribuir o resultado à própria variável de forma simplificada. Ele é equivalente a usar o operador de multiplicação (*) seguido de uma atribuição (=).

let x = 10

// Multiplica (x * 2) e guarda o valor em x
x *= 2

// Imprime o valor de x
console.log(x)

Saída:

20

Dividindo com o operador /=

O operador /= permite dividir uma variável por um valor e atribuir o resultado à própria variável de forma simplificada. Ele é equivalente a usar o operador de divisão (/) seguido de uma atribuição (=).

let x = 10

// Divide (x / 2) e guarda o valor em x
x /= 2

// Imprime o valor de x
console.log(x)

Saída:

5

Calculando o módulo com o operador %=

O operador %= permite calcular o resto da divisão de uma variável por um valor e atribuir o resultado à própria variável de forma simplificada. Ele é equivalente a usar o operador de módulo (%) seguido de uma atribuição (=).

let x = 10

// Calcula o resto (x % 3) e guarda o valor em x
x %= 3

// Imprime o valor de x
console.log(x)

Saída:

1

Realizando exponenciação com o operador **=

O operador **= permite elevar uma variável a uma potência e atribuir o resultado à própria variável de forma simplificada. Ele é equivalente a usar o operador de exponenciação (**) seguido de uma atribuição (=).

let x = 2

// Eleva (x ** 3) e guarda o valor em x
x **= 3

// Imprime o valor de x
console.log(x)

Saída:

8

Exemplos práticos

Atualizando o total de vendas

Imagine que você está desenvolvendo um sistema de vendas e precisa atualizar o total de vendas de um vendedor ao registrar uma nova venda:

let totalVendas = 1000;

// Adiciona o valor de uma nova venda ao total
totalVendas += 500;

console.log(`Total de vendas atualizado: ${totalVendas}`);

Saída:

Total de vendas atualizado: 1500

Calculando descontos progressivos

Em um sistema de e-commerce, você pode aplicar descontos progressivos ao preço de um produto:

let precoProduto = 200;

// Aplica um desconto de 10%
precoProduto -= precoProduto * 0.1;

console.log(`Preço com desconto: ${precoProduto}`);

Saída:

Preço com desconto: 180

Gerenciando estoque

Em um sistema de inventário, você pode usar operadores de atribuição para gerenciar o estoque de produtos:

let estoque = 50;

// Remove 5 unidades do estoque após uma venda
estoque -= 5;

console.log(`Estoque atualizado: ${estoque}`);

Saída:

Estoque atualizado: 45

Calculando juros compostos

Em um sistema financeiro, você pode calcular o valor acumulado de um investimento com juros compostos:

let investimento = 1000;
const taxaJuros = 0.05; // 5% ao ano

// Calcula o valor após 3 anos
investimento *= (1 + taxaJuros) ** 3;

console.log(`Valor acumulado: ${investimento.toFixed(2)}`);

Saída:

Valor acumulado: 1157.63