Números em JavaScript
Você já sabe que um valor pode ser um number. Esta sessão fica só nesse tipo: como escrever números, fazer contas do dia a dia, reconhecer resultados estranhos como NaN e Infinity, e mostrar um decimal limpo na página.
Como os números funcionam em JavaScript?
Para iniciantes, inteiros e decimais compartilham um tipo: number. Escreva-os sem aspas — 42 e 3.5 são números; "42" é string. Você soma, subtrai, multiplica, divide e obtém o resto. Algumas operações geram resultados especiais: NaN (“Not a Number”) quando o cálculo não é um número útil, e Infinity quando o valor ultrapassa um limite finito (por exemplo dividir por zero). Para exibir, toFixed monta uma string com a quantidade de casas decimais que você escolher.
Caixa de ferramentas numérica
📊 Ferramentas numéricas que o iniciante usa primeiro
| Ideia | Exemplo | Resultado / nota |
|---|---|---|
| Literal inteiro | let n = 10; |
Inteiro, tipo number |
| Literal decimal | let p = 2.5; |
O mesmo tipo number |
| Aritmética | 10 + 3, 10 % 3 |
Soma 13; resto 1 |
| NaN | 0 / 0 ou conta inválida |
“não é número” — typeof continua "number" |
| Infinity | 1 / 0 |
Além de limites finitos |
toFixed |
(3.14159).toFixed(2) |
String de exibição "3.14" |
Escreva números sem aspas
Inteiros e decimais compartilham o tipo. Não é preciso um “tipo inteiro” separado neste nível.
let score = 42;
let price = 9.99;
console.log(score);
console.log(price);
console.log(typeof score);
console.log(typeof price);
Contas do dia a dia
Use +, -, *, / e % (resto). O módulo de operadores aprofunda depois; aqui basta ver que números realmente calculam.
let a = 10;
let b = 3;
console.log(a + b);
console.log(a - b);
console.log(a * b);
console.log(a / b);
console.log(a % b);
NaN — não é um número útil
NaN significa que o resultado não é um número aproveitável. Curiosidade: typeof NaN ainda é "number". Se o cálculo parecer quebrado, registre o valor e procure NaN.
let broken = 0 / 0;
console.log(broken);
console.log(typeof broken);
Infinity
Dividir um número positivo por zero dá Infinity (dividendo negativo: -Infinity). É um resultado real do motor — útil reconhecer ao depurar.
let huge = 1 / 0;
console.log(huge);
console.log(typeof huge);
Formatar decimais com toFixed
toFixed(n) devolve uma string com n dígitos após o decimal — útil para exibir como dinheiro. Lembre-se: o resultado é texto; continue calculando com o número original, não com a string formatada.
let total = 19.999;
console.log(total.toFixed(2));
console.log(typeof total.toFixed(2));
Mostrar um total na página
Calcule uma soma, formate se quiser e coloque o texto na página com textContent.
<!DOCTYPE html>
<html>
<head>
<title>Numbers — total on page</title>
</head>
<body>
<p id="out">…</p>
<script>
let price = 12.5;
let tax = 1.25;
let total = price + tax;
document.getElementById("out").textContent = "Total: " + total.toFixed(2);
</script>
</body>
</html>
O parágrafo mostra um total no estilo dinheiro. Mude price ou tax, atualize e confira a linha.
Experimente você mesmo
- Crie dois
letnuméricos (inteiro e decimal); registre ambos etypeof. - Registre
a + b,a * bea % bcom dois inteiros pequenos. - Registre
0 / 0e confirmeNaN. - Registre
1 / 0e confirmeInfinity. - Chame
toFixed(2)num decimal;typeofdo resultado é"string". - No demo HTML mude só
priceoutax, atualize e leia o novo total.
Erros comuns
- Escrever
let n = "10";e esperar matemática numérica — aspas criam uma string - Ignorar
NaNquando o Console parece “vazio” ou estranho - Surpreender-se com
Infinityapós dividir por zero - Continuar calculando com o resultado de
toFixed(é uma string) - Esperar um tipo inteiro separado — o iniciante tem um tipo number
Resumo
- Inteiros e decimais compartilham o tipo number; escreva-os sem aspas
- Para contas do dia a dia use
+,-,*,/e% - NaN e Infinity são resultados numéricos especiais
toFixedformata decimais para exibir e devolve uma string- Próximo: Strings — texto com mais detalhe
🧠 Teste Seu Conhecimento
Teste Seu Conhecimento
Desafie-se com este questionário interativo e veja o quão bem você entende o tópico
📝 Instruções
- Leia cada pergunta cuidadosamente
- Selecione a melhor resposta para cada pergunta
- Você pode refazer o quiz quantas vezes quiser
- Seu progresso será mostrado no topo