J'aimerais pouvoir récupérer la chaîne de console.timeEnd('t')
dans ma console Google Chrome Javascript).
Dans cet exemple ci-dessous, je voudrais une variable qui contiendrait "t: 0.276ms"
> console.time('t'); console.timeEnd('t');
t: 0.276ms
< undefined
Est-ce quelque chose de faisable?
Dans Google Chrome 23.0.1262.2 (Official Build 155904) dev, il semble que ce soit impossible. Le seul moyen que j'ai trouvé pour pouvoir calculer le temps avec précision est d'utiliser window.performance.webkitNow()
Voici un exemple simple:
var start = window.performance.now();
...
var end = window.performance.now();
var time = end - start;
En savoir plus sur http://updates.html5rocks.com/2012/08/When-milliseconds-are-not-enough-performance-now
vous pouvez simplement utiliser
var begin=Date.now();
something here ...;
var end= Date.now();
var timeSpent=(end-begin)/1000+"secs";
c'est le moyen le plus simple et cela fonctionnera sur n'importe quel navigateur non seulement en chrome
Petite aide pour mesurer le temps. timerEnd
renvoie le temps en ms, également l'objet timers
contient des informations sur le nombre de fois où le temporisateur portant ce nom a été utilisé, la somme de tous les temps mesurés et la moyenne des mesures. Je trouve cela très utile, car le temps mesuré pour une opération dépend de nombreux facteurs, il est donc préférable de le mesurer plusieurs fois et de regarder la moyenne.
var timers = {};
function timer(name) {
timers[name + '_start'] = window.performance.now();
}
function timerEnd(name) {
if (!timers[name + '_start']) return undefined;
var time = window.performance.now() - timers[name + '_start'];
var amount = timers[name + '_amount'] = timers[name + '_amount'] ? timers[name + '_amount'] + 1 : 1;
var sum = timers[name + '_sum'] = timers[name + '_sum'] ? timers[name + '_sum'] + time : time;
timers[name + '_avg'] = sum / amount;
delete timers[name + '_start'];
return time;
}