El objeto Console es una herramienta que nos permite mostrar información en pantalla (por ejemplo, para depurar, o analizar aplicaciones).
Es parte de la API global de JavaScript y no requiere ser importado o instanciado. Simplemente lo tenemos disponible a traves del objeto global console
.
Dependiendo de donde estemos ejecutando nuestro fichero JavaScript
- En un navegador, la salida se hará en las herramientas de desarrollo (DevTools)
- En un runtime como Node.js, la salida será en la terminal
En JavaScript la consola se usa contínuamente. Así que vamos a ver algunos de sus principales métodos y utilidades 👇.
Qué es console.log
El método que usaréis con mayor frecuencia es console.log
. Su propósito principal es imprimir información en la consola**.
console.log(objeto);
Donde objeto puede ser cualquier tipo de dato que desees imprimir
Vamos a verlo con un ejemplo, sencillo. Si hacemos,
let mensaje = "Hola, LuisLlamas!";
console.log(mensaje);
Al ejecutar el código anterior en un navegador, Hola, LuisLlamas! se imprimirá en la consola.
Esto es útil para verificar que las variables contienen los valores esperados y que el flujo de ejecución es el correcto (poniendonos mensajes cuando se atraviesa un punto).
console.log
no solo sirve para mostrar textos. Puede manejar una gran variedad de tipos de datos, desde tipos primitivos hasta estructuras más complejas.
Opciones adicionales de console.log
Además de su uso básico, el método console.log
ofrece diversas opciones para mejorar la salida de consola.
Múltiples parámetros
Puedes pasar varios valores al método console.log
, y este los imprimirá de forma consecutiva, separados por un espacio.
console.log(valor1, valor2, ..., valorN);
Por ejemplo, es posible usarlo para incluir una etiqueta que describa lo que estás mostrando:
console.log("Resultado de la operación:", resultado);
// Salida: Resultado de la operación: <valor de resultado>
O mostrar varias variables o valores relacionados en una sola línea:
const nombre = "María";
const edad = 25;
const ciudad = "Madrid";
console.log("Nombre:", nombre, "Edad:", edad, "Ciudad:", ciudad);
// Salida: Nombre: María Edad: 25 Ciudad: Madrid
Formateo con marcadores de posición
console.log
admite el uso de marcadores de posición, permitiéndote controlar el formato de la salida.
%s
(para cadenas)%d
(para números enteros)%o
(para objetos)
const nombre = "Luis";
const edad = 30;
console.log("Hola, mi nombre es %s y tengo %d años", nombre, edad);
// Salida: Hola, mi nombre es Luis y tengo 30 años
Estilos personalizados en la consola
En entornos como los navegadores, puedes aplicar estilos CSS a tus mensajes utilizando el marcador %c
, para destacar mensajes visualmente.
console.log("%c¡Hola, Mundo!", "color: blue; font-size: 20px; font-weight: bold;");
// Salida: El texto aparecerá estilizado en azul, con un tamaño grande y en negrita.
Puedes usar múltiples declaraciones estilizadas en un solo mensaje:
console.log(
"%cÉxito:%c La operación se completó correctamente.",
"color: green; font-weight: bold;",
"color: black;"
);
// Salida: Éxito: aparece en verde y negrita; el resto, en negro normal.
Los estilos son compatibles con la mayoría de los navegadores modernos, pero no están disponibles en Node.js.
Métodos adicionales del console
Además de console.log
, el objeto console
ofrece varios métodos adicionales que pueden ser útiles para diferentes tipos de depuración:
console.error
Imprime mensajes de error en la consola. Generalmente se muestra en rojo para destacar los errores.
console.error("Este es un mensaje de error.");
console.warn
Imprime mensajes de advertencia en la consola, típicamente en amarillo.
console.warn("Este es un mensaje de advertencia.");
console.info
Imprime mensajes informativos. No tiene un estilo específico por defecto y se utiliza para mostrar información adicional.
console.info("Este es un mensaje informativo.");
console.debug
Imprime mensajes de depuración. La visibilidad de estos mensajes puede depender de la configuración del entorno.
console.debug("Este es un mensaje de depuración.");
console.table
Muestra datos tabulares en un formato de tabla. Es especialmente útil para arrays de objetos.
let usuarios = [
{ nombre: "Laura", edad: 28 },
{ nombre: "Luis", edad: 32 }
];
console.table(usuarios);
console.group y console.groupEnd
Agrupa los mensajes de la consola para hacer la salida más organizada. Puedes usar console.group
para comenzar un grupo de mensajes y console.groupEnd
para cerrarlo.
console.group("Datos del Usuario");
console.log("Nombre: Laura");
console.log("Edad: 28");
console.groupEnd();
console.time() y console.timeEnd()
Permiten med el tiempo de ejecución de una operación.
console.time("Cálculo");
let suma = 0;
for (let i = 0; i < 1000000; i++) {
suma += i;
}
console.timeEnd("Cálculo");
Ejemplos prácticos
Depuración de código
console.log
se utiliza comúnmente para depurar código al permitirte imprimir el estado actual de las variables y el flujo de ejecución. Esto es útil para identificar dónde pueden estar ocurriendo errores.
function sumar(a, b) {
console.log("Valores recibidos:", a, b);
return a + b;
}
Verificación de valores
Puedes usar console.log
para verificar el contenido de variables y objetos en puntos específicos del código.
let datosUsuario = {
nombre: "Miguel",
edad: 29
};
console.log("Datos del usuario:", datosUsuario);
Seguimiento de ejecución
console.log
ayuda a seguir el flujo de ejecución del código, mostrando cuándo se ejecutan ciertas funciones o bloques de código.
function iniciarProceso() {
console.log("Proceso iniciado.");
// Lógica del proceso
console.log("Proceso en ejecución.");
}
Prefiere métodos de depuración más avanzados
En JavaScript vas a usar console.log
hasta en la sopa, como herramienta para comprobar que una aplicación funciona (eso es inevitable, lo vas a hacer por mucho que te diga que no lo hagas)
Pero, recuerda que también hay herramientas de depuración más avanzadas, como puntos de interrupción (breakpoints) y el depurador integrado en los navegadores.
Consideraciones adicionales
- Nunca en producción: Limita el uso de
console
para la etapa de desarrollo. Asegúrate de eliminar los mensajes de depuración antes de la producción. - Seguridad y privacidad: Nunca utilices
console
para imprimir información sensible, como contraseñas o datos personales.