0Pricing
JavaScript Academy · Aula

Coerção de tipos: padrões seguros para evitar surpresas

Entenda a coerção implícita e explícita; prefira conversões claras com Number/String/Boolean; trate NaN com segurança.

Coerção de tipos: padrões seguros para evitar surpresas é uma aula grátis de JavaScript Academy no CoddyKit. Esta é a aula 3 de 3. 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 3 aulas no total.

Introdução

Objetivo: Veja quando JavaScript converte tipos, quais resultados produz e como usar conversões explícitas para manter o comportamento previsível.

  • Conversão implícita e explícita
  • Number, String e Boolean
  • Segurança com NaN
Coerção de tipos: padrões seguros para evitar surpresas — ilustração 1

Demonstração da coerção implícita

+ com uma string aciona a concatenação; - e * tentam fazer uma conversão numérica.

// Implicit coercion can surprise beginners
console.log("5" + 1);     
// "51"  (string concatenation)
console.log(5 + "1");    
// "51"  (number -> string)
console.log("5" - 1);     
// 4     (string -> number)
console.log("5" * 2);     
// 10    (string -> number)
Coerção de tipos: padrões seguros para evitar surpresas — ilustração 2

Conversões explícitas

Use Number(x), String(x) e Boolean(x) para manter a clareza.

// Prefer explicit, readable casts
const n = Number("42");      
// 42
const s = String(42);         
// "42"
const t = Boolean("hi");      
// true (non-empty string)
const f = Boolean("");        
// false (empty string)

console.log(n, s, t, f);
Coerção de tipos: padrões seguros para evitar surpresas — ilustração 3

Number e parseInt

Number(x) exige uma string totalmente numérica; parseInt analisa somente os dígitos iniciais.

// Number vs parseInt with examples
console.log(Number("42"));          
// 42 (full string must be numeric)
console.log(parseInt("42", 10));    
// 42
console.log(parseInt("42px", 10));  
// 42 (stops at non-digit)
console.log(Number("42px"));        
// NaN (not a pure number)
Coerção de tipos: padrões seguros para evitar surpresas — ilustração 4

Verificações de NaN

Use Number.isNaN para testar NaN sem conversão adicional.

// NaN is "Not a Number" and is not equal to itself
const bad = Number("oops");   
// NaN
console.log(bad === NaN);     
// false
console.log(Number.isNaN(bad)); 
// true (use this)
console.log(isNaN("5"));      
// false (string coerces to number 5)
Coerção de tipos: padrões seguros para evitar surpresas — ilustração 5

Lista de verificação de segurança

Padrões seguros:

  • Prefira === e conversões explícitas.
  • Use Number(x) para strings numéricas; evite truques engenhosos.
  • Valide as entradas; verifique Number.isNaN após a análise.
Coerção de tipos: padrões seguros para evitar surpresas — ilustração 6

Quiz sobre conversão explícita

Verificação rápida: conversão numérica explícita.

Coerção de tipos: padrões seguros para evitar surpresas — ilustração 7

Recapitulação

Recapitulação: A coerção implícita pode causar surpresas. Prefira conversões explícitas com Number, String e Boolean e use Number.isNaN como proteção quando necessário.

Coerção de tipos: padrões seguros para evitar surpresas — ilustração 8

Perguntas Frequentes

A aula “Coerção de tipos: padrões seguros para evitar surpresas” é grátis?

Sim — o texto completo de “Coerção de tipos: padrões seguros para evitar surpresas” é 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 3 aulas no total.

O que vou aprender em “Coerção de tipos: padrões seguros para evitar surpresas”?

Entenda a coerção implícita e explícita; prefira conversões claras com Number/String/Boolean; trate NaN com segurança. 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 3.

Quanto tempo leva a aula “Coerção de tipos: padrões seguros para evitar surpresas”?

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. Primitivos vs objetos e tipos fundamentais
  2. typeof, valores verdadeiros/falsos e == vs ===
  3. Coerção de tipos: padrões seguros para evitar surpresas
← Voltar para JavaScript Academy