Valores e console.log
console.log(2 + 3) mostra 5, mas console.log("2 + 3") mostra 2 + 3: as aspas decidem se o JavaScript calcula ou copia.
Tudo com que um programa trabalha é um valor
Um programa movimenta dados: preços, nomes, pontuações, respostas a perguntas de sim ou não. Cada dado isolado é um valor. O número 42 é um valor, o texto "Seoul" é um valor, e a resposta true também. Todo valor tem um tipo, que diz ao JavaScript que espécie de coisa ele é e o que dá para fazer com ele. Dá para multiplicar dois números, mas multiplicar dois nomes não faz sentido, então o JavaScript precisa saber qual é qual.
Os tipos básicos
| Tipo | Exemplos | Usado para |
|---|---|---|
| number | 42, 3.5, -7 | Contar, medir, dinheiro |
| string | "cat", 'Hello', "42" | Texto de qualquer tipo |
| boolean | true, false | Respostas de sim ou não |
| undefined | undefined | Um valor que ainda não foi definido |
| null | null | Vazio de propósito |
O JavaScript tem um único tipo number tanto para números inteiros quanto para decimais, então 7 e 7.5 são ambos numbers. Uma string é uma sequência de caracteres escrita entre aspas; aspas simples e duplas funcionam, desde que as duas pontas combinem. Um boolean tem só dois valores possíveis, true e false, escritos sem aspas. Os dois últimos, undefined e null, querem dizer "não tem nada aqui," e você vai encontrá-los de novo quando uma variável ainda não tiver recebido valor. O padrão ECMAScript também define BigInt e Symbol, que este curso não usa.
As aspas mudam o tipo
O valor 42 e o valor "42" parecem iguais quando mostrados, mas são de tipos diferentes. O primeiro é um número com que você pode fazer contas. O segundo é uma string formada pelos caracteres 4 e 2. O operador typeof diz o tipo de qualquer valor, e é um jeito rápido de conferir o que você tem nas mãos:
console.log(typeof 42); // number (número)
console.log(typeof "42"); // string (texto)
console.log(typeof true); // boolean (booleano)
console.log(typeof "true"); // string (texto)O mesmo acontece com cálculos. Sem aspas, o JavaScript resolve a expressão primeiro e mostra o resultado. Com aspas, os caracteres são texto e aparecem exatamente como foram digitados:
console.log(2 + 3); // 5
console.log("2 + 3"); // 2 + 3 (é texto)Um trecho de código que produz um valor, como 2 + 3 ou typeof 42, se chama expressão. Sempre que o JavaScript encontra uma expressão, ele a avalia, isto é, reduz a expressão a um único valor, e depois usa esse valor. Em console.log(2 + 3) a expressão é avaliada como 5 antes de o console.log sequer vê-la.
Mostrando vários valores de uma vez
console.log aceita mais de um valor. Separe-os com vírgulas e eles aparecem numa linha só, com um espaço entre cada um:
console.log("Age:", 30); // mostra Age: 30
console.log("Sum:", 4 + 5, "units"); // mostra Sum: 9 unitsEsse é o jeito mais fácil de rotular a saída enquanto você trabalha. Mostrar valores com um rótulo, como o "Sum:" acima, é como os programadores conferem o que o programa está fazendo em cada passo. Quando algo se comporta de um jeito estranho, o primeiro movimento costuma ser acrescentar um console.log e olhar.
Exemplos resolvidos
Exemplo 1. console.log(10 - 4) mostra 6, porque a expressão é avaliada primeiro. Exemplo 2. console.log("10 - 4") mostra 10 - 4, porque é uma string. Exemplo 3. console.log(typeof "") mostra string: duas aspas sem nada entre elas continuam formando uma string, chamada string vazia. Exemplo 4. console.log(typeof 3.0) mostra number; não existe um tipo separado para decimais.
| valor | Um dado: 42, "cat", true |
| tipo | A espécie de valor: number, string, boolean e assim por diante |
| number | Números inteiros e decimais, um só tipo para os dois |
| string | Texto escrito entre aspas |
| boolean | true ou false, escritos sem aspas |
| expressão | Código que produz um valor, como 2 + 3 |
| typeof | Dá o tipo de um valor como string |
| string vazia | Uma string sem caracteres, escrita "" |
- O que isto mostra?
console.log(6 * 7); - O que isto mostra?
console.log("6 * 7");- 42
- 6 * 7
- "6 * 7"
- O que isto mostra?
console.log(typeof 7.5); - O que isto mostra?
console.log(typeof "7.5"); - O que isto mostra?
console.log(typeof false); - O que isto mostra?
console.log("Total:", 3 + 4);- Total: 7
- Total:7
- Total: 3 + 4
- Qual destes é um valor boolean?
"true"true1
- O que isto mostra?
console.log(typeof ""); - O que isto mostra?
console.log(10 - 4, "10 - 4");- 6 6
- 6 10 - 4
- 10 - 4 10 - 4
- Qual é uma string válida?
"hello''hello'hello
- Cada dado é um valor, e cada valor tem um tipo.
- Tipos básicos: number, string, boolean, undefined, null.
- Aspas formam uma string; sem aspas o JavaScript avalia a expressão.
- typeof diz o tipo.
- console.log(a, b) mostra os dois valores numa linha, com um espaço.
Fontes deste curso (2)
- MDN Web Docs, JavaScript Guide (developer.mozilla.org/en-US/docs/Web/JavaScript/Guide, chapters Introduction, Grammar and types, Control flow, Loops and iteration, Functions, Expressions and operators, Numbers and strings, Indexed collections, Working with objects; checked 2026-10-17)
- Ecma International, ECMA-262 ECMAScript 2026 Language Specification, 17th edition, June 2026 (tc39.es/ecma262 and ecma-international.org/publications-and-standards/standards/ecma-262, checked 2026-10-17)
Data de verificação: 2026-10-17