Qual è il modo migliore per profilare l'esecuzione di javascript? [chiuso]


94

Esiste un buon profiler per javascript? So che Firebug ha un supporto per il codice di profilazione. Ma voglio determinare le statistiche su una scala più lunga. Immagina di creare molto codice javascript e di voler determinare quali sono effettivamente i colli di bottiglia nel codice. All'inizio voglio vedere le statistiche del profilo di ogni funzione javascript e il tempo di esecuzione. Il prossimo sarebbe includere le funzioni DOM. Questo combinato con azioni che rallentano le cose, come le operazioni sull'albero di rendering sarebbero perfette. Penso che questo darebbe una buona impressione se le prestazioni venissero uccise nel mio codice, nella preparazione del DOM o negli aggiornamenti dell'albero di rendering / visual.

C'è qualcosa di vicino a quello che voglio? O quale sarebbe lo strumento migliore per ottenere il massimo da ciò che ho descritto? Sarebbe un browser autocompilato più un motore javascript migliorato dalla funzionalità del profilo?


Se NODE_ENV=production node --prof app.jsnon funziona, vedi stackify.com/node-js-profilers o softwarerecs.stackexchange.com per le alternative.
Cees Timmerman il

Risposte:


63

Firebug

Firebug fornisce un rapporto di profilazione altamente dettagliato. Ti dirà quanto tempo richiede ogni invocazione di metodo in una tabella gigante (dettagliata).

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

Devi chiamare console.profileEnd ()per terminare il blocco del tuo profilo. Vedi l'API della console qui: http://getfirebug.com/wiki/index.php/Console_API

Merlo

Blackbird ( sito ufficiale ) ha anche un profiler più semplice (può essere scaricato da qui )


Ho scritto che conosco Firefox. Voglio avere più statistiche dal browser che sta influenzando l'esecuzione del javascript.
Norbert Hartl

1
Idem su Firebug, e puoi profilare direttamente dalla console se non vuoi codificarlo.
Chris B

1
Firebug è lo strumento migliore che otterrai.
Sasha Chedygov

1
La stessa cosa funziona in Safari Web Inspector
olliej

9
Firebug è buono e tutto, ma non posso credere che ci siano così tante persone qui che cantano "Firebug, Firebug!" subito dopo l'OP ha detto esplicitamente che vuole profilare il suo codice da più browser.
JMTyler

20

Gli strumenti per sviluppatori di Chrome hanno un profiler integrato.


2
+1, Speed ​​Tracer è buono ed è importante (come menzionato dall'OP) profilare il tuo codice in qualcosa di più di Firefox per vedere come il singolo browser lo influisce.
JMTyler


4

Firebug + Firefox è un must. E la barra degli strumenti per sviluppatori di IE 8 ha anche un profiler integrato (IE 8 viene fornito con la barra degli strumenti per sviluppatori).


4

L'ispettore web di Safari 4 include anche un profiler (sebbene la versione nei nightlies sia migliorata rispetto alle chiamate di funzione ricorsive). Web Inspector supporta anche le API del profiler di Firebug.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.