91 votes

Quelle est la meilleure façon de profiler l'exécution de javascript ?

Existe-t-il un bon profileur pour javascript ? Je sais que firebug a un certain support pour le profilage du code. Mais je veux déterminer les statistiques sur une plus longue échelle. Imaginez que vous construisez beaucoup de code javascript et que vous voulez déterminer quels sont les goulots d'étranglement dans le code. Dans un premier temps, je veux voir les statistiques de profilage de chaque fonction javascript et le temps d'exécution. Ensuite, il faudrait inclure les fonctions DOM. Ceci combiné avec des actions qui ralentissent les choses comme les opérations sur l'arbre de rendu serait parfait. Je pense que cela donnerait une bonne impression si la performance est tuée dans mon code, dans la préparation du DOM ou dans les mises à jour de l'arbre de rendu/visuel.

Y a-t-il quelque chose qui se rapproche de ce que je veux ? Ou quel serait le meilleur outil pour réaliser l'essentiel de ce que j'ai décrit ? S'agirait-il d'un navigateur auto-compilé et d'un moteur javascript enrichi d'une fonctionnalité de profil ?

62voto

geowa4 Points 17712

Firebug fournit un rapport de profilage très détaillé. Il vous dira combien de temps prend chaque invocation de méthode dans un tableau géant (détaillé).

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

Vous devez appeler console.profileEnd () pour mettre fin au blocage de votre profil. Voir l'API de la console ici : http://getfirebug.com/wiki/index.php/Console_API

Merle noir dispose également d'un profileur plus simple.

20voto

Vince Points 786

Les outils du développeur de Chrome comportent un profileur intégré. Il existe également une bonne extension Chrome appelée Traceur de vitesse .

12voto

Jason Bunting Points 27534

Bien que Firebug ait été mentionné, il existe un plugin pour Firebug appelé FireUnit John Resig en parle dans cet article de blog :

Profilage des appels de fonction JavaScript

J'espère que cela vous aidera.

4voto

Chris Brandsma Points 7225

Firebug+Firefox est un outil indispensable. La barre d'outils de développement d'IE 8 intègre également un profileur (IE 8 est livré avec la barre d'outils de développement).

4voto

olliej Points 16255

L'inspecteur Web de Safari 4 comprend également un profileur (bien que la version des nightlies soit améliorée en ce qui concerne les appels de fonction récursifs). L'inspecteur Web prend également en charge les API de profileur de Firebug.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X