Algo relativamente habitual es tener que comprobar cuánto tarda nuestro código en ejecutarse e ir dejando trazas de los tiempos de ejecución para luego poder revisarlos.
El otro día descubrí que los navegadores incluyen una utilidad que hace toda la tarea por nosotros. Es tan fácil como lo que sigue:
console.time('Suceso1');
// ... Aquí pasan cosas
console.timeEnd('Suceso1');
El resultado será una línea como ésta:
Suceso1: 5569.000ms
Como cosa interesante, decir que si anidamos mediciones los resultados no se solapan. El navegador sabe distinguir qué medición estamos pidiéndole que muestre al hacer el console.timeEnd() porque le estamos pasando la etiqueta (Suceso1 en el ejemplo anterior). Esto significa que si ejecutáis console.time() con distintas etiquetas y luego ejecutáis los end en ordenes distintos, los tiempos que veréis serán los correctos.
¿No os lo creéis? Haced unas probatinas y me lo contáis 🙂
Otra cosa importante es que no todos los navegadores tienen implementada esta funcionalidad. Para ello, el señor de cuyo blog obtuve esta información propone una alternativa. No es mala pero no permite anidar mediciones como os comentaba. Os dejo un enlace a su entrada por si queréis leerla, a mí me fue muy útil.
En próximas entradas implementaré yo ese extra que le falta a la propuesta de Ajimix.
Ale, otro día más y mejor! 🙂