Objecte console
L'objecte console de JavaScript és un objecte global integrat que proporciona accés a la consola de depuració del navegador web. El seu propòsit principal és permetre als desenvolupadors registrar (log) informació durant l'execució del codi per a propòsits de depuració, monitorització i prova. És el millor amic per saber què està passant "sota el capó" de l'aplicació.
Mètodes de Registre (Logging) Més Comuns
El mètode més conegut és console.log(), però hi ha diversos mètodes essencials per registrar diferents tipus d'informació:
| Mètode | Propòsit | Exemple |
console.log() |
Mostra un missatge d'informació general. És el més utilitzat. | console.log('Valor actual:', x); |
console.warn() |
Emet un missatge d'advertència. Sovint es mostra amb una icona groga ⚠️. | console.warn('Funció obsoleta.'); |
console.error() |
Emet un missatge d'error. Sovint es mostra amb una icona vermella ❌ i inclou una traça de pila (stack trace). | console.error('La connexió ha fallat.'); |
console.info() |
Mostra un missatge informatiu similar a log(), però es pot filtrar diferentment. |
console.info('Iniciant procés...'); |
console.dir() |
Mostra una representació interactiva en format d'arbre de les propietats d'un objecte JavaScript especificat. Útil per a inspeccionar objectes DOM. | console.dir(document.body); |
Mètodes Avançats per a l'Organització i Mesura
Aquests mètodes ajuden a estructurar la informació complexa i a mesurar el rendiment.
1. Agrupació de Missatges
Permet agrupar missatges per fer la consola més llegible, especialment quan es depuren bucles o funcions que es criden repetidament.
| Mètode | Descripció |
console.group(label) |
Inicia un nou bloc de missatges amb l'etiqueta label. |
console.groupCollapsed(label) |
Inicia un bloc, però el manté col·lapsat per defecte. |
console.groupEnd() |
Tanca el bloc d'agrupació actual. |
console.group('Detalls de la compra');
console.log('Producte: Llibreta');
console.log('Preu: 15€');
console.groupEnd();
2. Mesura del Temps
Aquests mètodes ajuden a mesurar amb precisió quant de temps triga una part específica del codi a executar-se.
| Mètode | Descripció |
console.time(label) |
Inicia un temporitzador amb una etiqueta única. |
console.timeEnd(label) |
Atura el temporitzador amb l'etiqueta corresponent i imprimeix el temps transcorregut a la consola. |
console.time('Calcul complex');
for (let i = 0; i < 1000000; i++) {
// Simulació de càlcul
}
console.timeEnd('Calcul complex');
// Sortida: Calcul complex: 5.234 ms (exemple)
3. Taules i Assertions
| Mètode | Descripció |
console.table(data) |
Mostra dades (arrays o objectes amb moltes propietats) en un format de taula net i interactiu. 📊 |
console.assert(condition, message) |
Si la condition és falsa, imprimeix l'message com un error. Si és certa, no fa res. Útil per a proves ràpides. |
const usuaris = [{ nom: 'Anna', edat: 28 }, { nom: 'Pau', edat: 35 }];
console.table(usuaris);
console.assert(2 + 2 === 5, 'Error: 2 + 2 no és 5!');
// S'imprimirà l'error només si l'afirmació és falsa