Calcul du temps d'execution d'un code

Soyez le premier à donner votre avis sur cette source.

Snippet vu 16 043 fois - Téléchargée 28 fois

Contenu du snippet

Il arrive souvent qu'on soit confronter à un problème, et qu'il y est plusieurs méthodes pour le résoudre. Et il arrive, qu'on ne choisisse pas toujours la meilleur (on préfère l'une à l'autre, ou une erreur de jugement).

Ce bout de code va vous permette de calculer le temps que mets votre ordinateur à réaliser telle ou telle tâche.
C'est extrêmement simple au niveau du code, mais c'est vraiment très utile pour optimiser.

Source / Exemple :


var date = new Date ();			// Création d'un objet Date
var m1 = date.getTime();		// On récupère le nombre de milliseconde depuis le 01/01/1970 à 00:00

// VOTRE CODE ICI //

date = new Date ();			// On recréer un objet Date
var m2 = date.getTime ();		// On récupère une deuxième fois la date

trace (m2-m1);				// On affiche la différence = le temps écoulé entre le premier "new Date()" et le deuxième.

/* le "var" permet d'effacer automatiquement la variable dès la fermeture du groupe ("}")
   Si vous ne voulez pas être dérangé par ces trois variables après (on sait jamais), il suffit de les effacer manuellement
   Pour cela, suivez le code suivant

delete m1;
delete m2;
delete date; */

A voir également

Ajouter un commentaire Commentaires
Messages postés
3
Date d'inscription
mercredi 8 mars 2006
Statut
Membre
Dernière intervention
17 mai 2006

Excellent Merci bien
Messages postés
209
Date d'inscription
mercredi 4 août 2004
Statut
Membre
Dernière intervention
6 avril 2009
1
OK... C'est bon à savoir...
Messages postés
232
Date d'inscription
mercredi 2 avril 2003
Statut
Membre
Dernière intervention
29 mars 2011

Pas mal !
je ne connaissais pas cette fonction : getTimer();

En effet, ça simplifie le code.

Si on utilise l'objet Date, alors Oui ! on est obligé d'en recréer un autre. Au moment de sa création, l'objet date chope toute les infos (millisecondes, secondes, heure, jour, etc...) et on les récupère lorsqu'on appelle les fonction getSeconde() etc...

Donc si je conserve le même objet Date, je vais toujours avoir zéro comme résultat de la différence.
Messages postés
26
Date d'inscription
mardi 13 avril 2004
Statut
Membre
Dernière intervention
27 septembre 2006

bonne idée ce code.
Et pourquoi pas utiliser getTimer() simplement?

m1=getTimer();

/* code à chronométrer..................... */

trace ( getTimer()-m1);
Messages postés
209
Date d'inscription
mercredi 4 août 2004
Statut
Membre
Dernière intervention
6 avril 2009
1
Est-il vraiment nécessaire de créer un deuxième objet Date ? Si tu appelles le deuxième getTime sur le premier Date ca revient au même, non ?
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.