Valores y console.log
console.log(2 + 3) imprime 5, pero console.log("2 + 3") imprime 2 + 3: las comillas deciden si JavaScript calcula o copia.
Todo aquello con lo que trabaja un programa es un valor
Un programa mueve datos de un lado a otro: precios, nombres, puntuaciones, respuestas a preguntas de sí o no. Cada dato suelto es un valor. El número 42 es un valor, el texto "Seoul" es un valor, y también lo es la respuesta true. Cada valor tiene un tipo, que le dice a JavaScript qué clase de cosa es y qué se puede hacer con ella. Puedes multiplicar dos números, pero multiplicar dos nombres no tiene sentido, así que JavaScript necesita saber cuál es cuál.
Los tipos básicos
| Tipo | Ejemplos | Sirve para |
|---|---|---|
| número | 42, 3.5, -7 | Contar, medir, dinero |
| string | "cat", 'Hello', "42" | Texto de cualquier tipo |
| boolean | true, false | Respuestas de sí o no |
| undefined | undefined | Un valor que todavía no se ha asignado |
| null | null | Vacío a propósito |
JavaScript tiene un solo tipo de número para los enteros y los decimales, así que 7 y 7.5 son números. Una cadena (string) es una secuencia de caracteres escrita entre comillas; sirven tanto las comillas simples como las dobles, siempre que los dos extremos coincidan. Un booleano tiene solo dos valores posibles, true y false, escritos sin comillas. Los dos últimos, undefined y null, significan los dos "aquí no hay nada", y volverás a verlos cuando una variable no haya recibido un valor. El estándar ECMAScript también define BigInt y Symbol, que este curso no necesita.
Las comillas cambian el tipo
El valor 42 y el valor "42" se ven iguales al imprimirlos, pero son de tipos distintos. El primero es un número con el que se puede hacer aritmética. El segundo es una cadena formada por los caracteres 4 y 2. El operador typeof te dice el tipo de cualquier valor, y es una forma rápida de comprobar qué tienes entre manos:
console.log(typeof 42); // number (número)
console.log(typeof "42"); // string (cadena)
console.log(typeof true); // boolean (booleano)
console.log(typeof "true"); // string (cadena)Lo mismo pasa con los cálculos. Sin comillas, JavaScript resuelve primero la expresión e imprime el resultado. Con comillas, los caracteres son texto y se imprimen tal como se escribieron:
console.log(2 + 3); // 5
console.log("2 + 3"); // 2 + 3 (es texto)Un trozo de código que produce un valor, como 2 + 3 o typeof 42, se llama expresión. Cada vez que JavaScript encuentra una expresión, la evalúa, es decir, la reduce a un solo valor, y luego usa ese valor. En console.log(2 + 3), la expresión se evalúa a 5 antes de que console.log la vea.
Imprimir varios valores a la vez
console.log acepta más de un valor. Sepáralos con comas y se imprimen en una sola línea con un espacio entre cada uno:
console.log("Age:", 30); // Age: 30
console.log("Sum:", 4 + 5, "units"); // Sum: 9 units (una sola línea)Es la forma más fácil de etiquetar tu salida mientras trabajas. Imprimir valores con una etiqueta, como "Sum:" arriba, es la manera en que los programadores comprueban qué hace un programa en cada paso. Cuando algo se comporta de forma extraña, lo primero que se suele hacer es agregar un console.log y mirar.
Ejemplos resueltos
Ejemplo 1. console.log(10 - 4) imprime 6, porque la expresión se evalúa primero. Ejemplo 2. console.log("10 - 4") imprime 10 - 4, porque es una cadena. Ejemplo 3. console.log(typeof "") imprime string: dos comillas sin nada entre ellas siguen formando una cadena, llamada cadena vacía. Ejemplo 4. console.log(typeof 3.0) imprime number; no hay un tipo aparte para los decimales.
| valor | Un dato: 42, "cat", true |
| tipo | La clase de valor: number, string, boolean, etc. |
| número | Enteros y decimales, un solo tipo para los dos |
| string | Texto escrito entre comillas |
| boolean | true o false, escritos sin comillas |
| expresión | Código que produce un valor, como 2 + 3 |
| typeof | Da el tipo de un valor como cadena |
| cadena vacía | Una cadena sin caracteres, escrita "" |
- ¿Qué imprime esto?
console.log(6 * 7); - ¿Qué imprime esto?
console.log("6 * 7");- 42
- 6 * 7
- "6 * 7"
- ¿Qué imprime esto?
console.log(typeof 7.5); - ¿Qué imprime esto?
console.log(typeof "7.5"); - ¿Qué imprime esto?
console.log(typeof false); - ¿Qué imprime esto?
console.log("Total:", 3 + 4);- Total: 7
- Total:7
- Total: 3 + 4
- ¿Cuál de estos es un valor booleano?
"true"true1
- ¿Qué imprime esto?
console.log(typeof ""); - ¿Qué imprime esto?
console.log(10 - 4, "10 - 4");- 6 6
- 6 10 - 4
- 10 - 4 10 - 4
- ¿Cuál es una cadena válida?
"hello''hello'hello
- Cada dato es un valor, y cada valor tiene un tipo.
- Tipos básicos: number, string, boolean, undefined, null.
- Las comillas forman una cadena; sin comillas, JavaScript evalúa la expresión.
- typeof te dice el tipo.
- console.log(a, b) imprime los dos valores en una línea, con un espacio.
Fuentes de este 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)
Fecha de consulta: 2026-10-17