0Pricing
JavaScript Academy · Aula

Coerção implícita em operações

Preveja como + e as comparações fazem coerção de tipos.

Coerção implícita em operações é uma aula grátis de JavaScript Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de JavaScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de JavaScript Academy inclui 4 aulas no total.

Conversão implícita

Conversão implícita acontece quando um operador converte operandos para um tipo necessário à operação. Operadores diferentes acionam conversões diferentes.

console.log("5" + 1)
console.log("5" - 1)

Adição com textos

O operador de adição é especial: se qualquer operando for um texto, ele realiza concatenação de textos em vez de uma adição numérica.

console.log("3" + 4)
console.log(3 + "4")
console.log("a" + 1 + 2)

Número mais número

Quando ambos os operandos são números, a adição os soma. A ordem das operações é importante quando textos aparecem mais adiante na sequência.

console.log(1 + 2 + "3")
console.log("1" + 2 + 3)

A subtração força números

O operador de subtração não tem um significado textual, portanto sempre converte ambos os operandos para números, até mesmo textos que parecem numéricos.

console.log("10" - "4")
console.log("10" - 4)

Multiplicação e divisão

Assim como a subtração, os operadores de multiplicação e divisão convertem os operandos para números. Textos não numéricos produzem NaN.

console.log("6" * "2")
console.log("abc" * 2)

Adição unária

Uma adição unária diante de um valor o converte para um número, uma forma compacta de realizar essa conversão.

console.log(+"42")
console.log(+"3.14")
console.log(+true)

Conversão em comparações

Operadores relacionais, como menor que, convertem os operandos para números, a menos que ambos sejam textos; nesse caso, eles são comparados em ordem alfabética.

console.log("10" > 5)
console.log("apple" < "banana")

Comparações mistas

Quando um lado é um texto e o outro é um número, o texto é convertido para um número antes da comparação.

console.log("20" > 3)
console.log("3" > 20)

Booleanos na aritmética

Os booleanos se tornam 1 ou 0 na aritmética, portanto adicionar verdadeiro a um número o incrementa.

console.log(true + true)
console.log(5 + false)

Vetores em conversões

Os vetores são convertidos para textos quando usados com a adição. Um vetor vazio se torna um texto vazio, e um vetor com um único elemento se torna esse elemento em forma de texto.

console.log([] + [])
console.log([1, 2] + [3])

Evitando surpresas

Para evitar concatenações acidentais ou NaN, converta explicitamente com uma conversão numérica ou textual antes de operar. Deixar clara a intenção é melhor do que depender de conversões implícitas.

const a = "5"
const b = "3"
console.log(Number(a) + Number(b))

Verificação rápida

Teste seus conhecimentos sobre conversões implícitas.

Recapitulação

Recapitulação: Os operadores acionam conversões diferentes.

  • A adição concatena quando qualquer operando é um texto
  • Subtração, multiplicação e divisão forçam conversões para números
  • As comparações convertem para números, a menos que ambos sejam textos
  • Converta explicitamente para evitar surpresas
console.log("5" + 1)
console.log("5" - 1)

Perguntas Frequentes

A aula “Coerção implícita em operações” é grátis?

Sim — o texto completo de “Coerção implícita em operações” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de JavaScript Academy, atualize para CoddyKit PRO. O curso de JavaScript Academy inclui 4 aulas no total.

O que vou aprender em “Coerção implícita em operações”?

Preveja como + e as comparações fazem coerção de tipos. Você pratica JavaScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar JavaScript Academy?

Nenhuma experiência prévia é necessária. JavaScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Coerção implícita em operações”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de JavaScript Academy?

Sim. Cada aula de JavaScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Valores truthy e falsy
  2. Igualdade flexível versus estrita
  3. Coerção implícita em operações
  4. Técnicas de conversão explícita
← Voltar para JavaScript Academy