Der Martin: Soziologe tut isch schwer beim Berechnen der Zeit

Beitrag lesen

Hallo,

function startDurationMeasurement() {

var count = 0;
var timer = $.timer(
function() {
count++;
$('table#duration tr td span.runningValueExplanation').text(formatTime(count));
},
1000,
true
);
timer.play();
}

  
okay, dann macht sich jemand das Leben unnötig schwer. Eine Zeitmessung auf diese Weise nachzubauen, ist so ähnlich, als würde man eine Strickleiter am Balkon nutzen, obwohl das Haus einen Fahrstuhl hat. Aber gut, der Übung halber ...  
  

> Das Problem ist also, dass ich mir das Ganze selber rausrechnen muss.  
> Könnte mir vielleicht jemand schreiben, wie ich das am Besten machen kann - wäre sehr dankbar dafür.  
  
Ich würde mit der kleinsten Einheit anfangen, der Sekunde. Und von dort aus zu größeren Einheiten vorgehen. Dafür verwende ich die Modulo-Division, die als Ergebnis immer den Rest einer ganzzahligen Division liefert, denn es gilt beispielsweise:  
  438 / 60 = 7 (Rest 18)  
Also sind 438 Sekunden in gemischter Angabe 7 Minuten und 18 Sekunden.  
  
~~~javascript
function getFormattedTime(time)   // takes elapsed time in milliseconds  
 { var msec, sec, min, hr;  
   var ft;                        // formatted time string  
  
   msec = time % 1000;            // get milliseconds, in case we might need it  
   time = Math.floor(time/1000);  // convert time to seconds, ignoring the milliseconds  
   sec  = time % 60;              // get seconds - a minute has 60 seconds  
   time = Math.floor(time/60);    // reduce time to full minutes  
   min  = time % 60;              // get minutes - similar to above, an hour has 60 minutes  
   time = Math.floor(time/60);    // reduce time to full hours  
   hr   = time % 60;              // get hours - a day has 24 hours  
// if time is !=0 now, it contains the number of days, i.e. time was initially more than 24h  
  
   ft = (hr<10  ? "0" : "") + hr  + ":"  
      + (min<10 ? "0" : "") + min + ":"  
      + (sec<10 ? "0" : "") + sec;  
   return (ft);  
 }

So long,
 Martin

--
Soziologen sind nützlich, aber keiner will sie haben.
Bei Informatikern ist es gerade umgekehrt.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(