edubun
Português

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

TipoExemplosUsado para
number42, 3.5, -7Contar, medir, dinheiro
string"cat", 'Hello', "42"Texto de qualquer tipo
booleantrue, falseRespostas de sim ou não
undefinedundefinedUm valor que ainda não foi definido
nullnullVazio 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 units

Esse é 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.

valorUm dado: 42, "cat", true
tipoA espécie de valor: number, string, boolean e assim por diante
numberNúmeros inteiros e decimais, um só tipo para os dois
stringTexto escrito entre aspas
booleantrue ou false, escritos sem aspas
expressãoCódigo que produz um valor, como 2 + 3
typeofDá o tipo de um valor como string
string vaziaUma string sem caracteres, escrita ""
  1. O que isto mostra?
    console.log(6 * 7);
  2. O que isto mostra?
    console.log("6 * 7");
    • 42
    • 6 * 7
    • "6 * 7"
  3. O que isto mostra?
    console.log(typeof 7.5);
  4. O que isto mostra?
    console.log(typeof "7.5");
  5. O que isto mostra?
    console.log(typeof false);
  6. O que isto mostra?
    console.log("Total:", 3 + 4);
    • Total: 7
    • Total:7
    • Total: 3 + 4
  7. Qual destes é um valor boolean?
    • "true"
    • true
    • 1
  8. O que isto mostra?
    console.log(typeof "");
  9. O que isto mostra?
    console.log(10 - 4, "10 - 4");
    • 6 6
    • 6 10 - 4
    • 10 - 4 10 - 4
  10. Qual é uma string válida?
    • "hello'
    • 'hello'
    • hello
Pontos-chave
  • 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