2009-05-12 11 views
81

¿Hay un buen generador de perfiles para javascript? Sé que Firebug tiene algo de apoyo para el código de perfil. Pero quiero determinar las estadísticas en una escala más larga. Imagine que está creando una gran cantidad de código JavaScript y desea determinar cuáles son realmente los cuellos de botella en el código. Al principio quiero ver las estadísticas de perfil de cada función de JavaScript y el tiempo de ejecución. Lo siguiente sería incluir funciones DOM. Esto combinado con acciones que ralentizan las cosas, como la operación en el árbol de renderizado, sería perfecto. Creo que esto daría una buena impresión si el rendimiento se cancela en mi código, en la preparación de DOM o en las actualizaciones del árbol/visual de renderizado.¿Cuál es la mejor manera de perfilar la ejecución de javascript?

¿Hay algo cerca de lo que quiero? ¿O cuál sería la mejor herramienta para lograr la mayor parte de lo que he descrito? ¿Sería un navegador auto compilado más un motor de JavaScript mejorado por la funcionalidad del perfil?

Respuesta

60

Firebug

Firebug proporciona un informe muy detallado de perfiles. Le indicará cuánto tiempo tarda cada invocación de método en una tabla gigante (detallada).

console.profile([title]) 
//also see 
console.trace() 

es necesario llamar a console.profileEnd() para poner fin a su bloque perfil. Ver la API de consola aquí: http://getfirebug.com/wiki/index.php/Console_API

mirlo

mirlo (official site) también tiene un generador de perfiles más simple (se puede descargar desde here)

+0

Escribí que conozco Firefox. Quiero tener más estadísticas del navegador que influyen en la ejecución del javascript. –

+0

errr ... Quise decir firebug;) –

+1

Lo mismo en Firebug, y puede perfilar directamente desde la consola si no desea codificarlo. –

4

Firebug + Firefox es una necesidad. Y la barra de herramientas para desarrolladores de IE 8 también tiene un generador de perfiles integrado (IE 8 se envía con la barra de herramientas del desarrollador).

4

El inspector web de Safari 4 también incluye un generador de perfiles (aunque la versión en los nightlies es mejorada por las llamadas a funciones recursivas). El inspector web también es compatible con las API de perfil de Firebug.

12

Aunque Firebug ha sido mencionado, una cosa adicional que te gustaría ver con Firebug es un plugin para Firebug llamado FireUnit; John Resig habla de ello en esta entrada del blog:

JavaScript Function Call Profiling

Espero que ayude.

+0

Aquí parece que hay un enlace de descarga - https: // github.com/jeresig/fireunit/tree/master –

4

JavaScript, XmlHttpRequest, DOM acceso, Rendering Times y el tráfico de red para IE6, 7 & 8 se puede utilizar la conexión dynaTrace AJAX Edition

+0

por favor, instrucciones de cómo instalarlo como complemento/extensión en el navegador. –

17

herramientas para desarrolladores de Chrome tiene un generador de perfiles incorporado.

+2

+1, Speed ​​Tracer es bueno, y es importante (como lo mencionó OP) describir su código en más que solo Firefox para ver cómo lo afecta el navegador individual. – JMTyler

Cuestiones relacionadas