O que são Operadores de Atribuição Composta em JavaScript e Como Eles Funcionam?
Em JavaScript, todos os operadores aritméticos têm uma forma de atribuição composta. Compound assignment operators provide a concise shorthand for an operation on a variable followed by storing the result in that same variable. They combine the operation and assignment into a shorter form like
x += y, which is equivalent to writing x = x + y but without repeating the variable name. Em vez de escrever algo assim:
let num = 5;
num = num + 2;
console.log(num); // 7
Você pode escrever algo assim:
let num = 5;
num += 2;
console.log(num); // 7
Note como num += 2 combina as etapas de adição e atribuição em uma só. Isso economiza tempo e reduz a desordem no seu código. Vamos nos aprofundar nos operadores de atribuição composta mais comuns em JavaScript.
Como você já viu, o operador += permite que você adicione um valor a uma variável existente. É conhecido como o operador de atribuição de adição. O operador de atribuição de adição pega o valor atual da variável, adiciona o número especificado a ele e então atribui o resultado de volta à variável:
let total = 10;
total += 5;
console.log(total); // 15
Como você pode imaginar, existe um operador de atribuição de subtração denotado por -=. O operador de atribuição de subtração subtrai o valor especificado do valor atual da variável e atribui o novo valor de volta à variável:
let score = 20;
score -= 7;
console.log(score); // 13
Se você não tivesse usado a atribuição de subtração, teria feito algo assim:
let score = 20;
score = score - 7;
console.log(score); // 13
O operador de atribuição de multiplicação é representado por *=. Multiplica o valor atual da variável pelo número especificado e o reatribui à variável:
let points = 5;
points *= 3;
console.log(points); // 15
Por fim, há um operador de atribuição de divisão denotado por /=. Assim como outros antes dele, ele permite que você divida o valor atual de uma variável por um número que você especificar, e então atribua o resultado de volta à variável:
let balance = 100;
balance /= 4;
console.log(balance); // 25
Lembre-se de que existe um operador de atribuição composta para cada operador em JavaScript. Então, além dos quatro já mencionados, também temos:
- Operador de atribuição de resto (
%=), que divide uma variável pelo número especificado e atribui o resto à variável. - Operador de atribuição de exponenciação (
**=), que eleva uma variável à potência do número especificado e reatribui o resultado à variável. - Operador de atribuição bit a bit AND (
&=), que realiza uma operação bit a bit AND com o número especificado e reatribui o resultado à variável. - Operador de atribuição OR bit a bit (
|=), que realiza uma operação OR bit a bit com o número especificado e reatribui o resultado à variável.
Este módulo não possui perguntas. Marque como concluído.