Hallo, dies ist eine Übung für eine Stoppuhr.
Ich verstehe nicht, warum offset = Date.now(); innerhalb von this.start und var now = Date.now(); in der Funktion delta() unterschiedliche Werte annimmt (für die Berechnung des Deltas)??
Es müsste doch zeitgleich aufgerufen werden?? (also gleiche Werte!!) Weiss hier jemand was? Danke.
Ich verstehe nicht, warum offset = Date.now(); innerhalb von this.start und var now = Date.now(); in der Funktion delta() unterschiedliche Werte annimmt (für die Berechnung des Deltas)??
Es müsste doch zeitgleich aufgerufen werden?? (also gleiche Werte!!) Weiss hier jemand was? Danke.
Code:
function stopwatch() { var isOn = false; var time = 0; //time in milliseconds var interval; var offset; function update() { //update is running every 10 milliseconds time += delta(); console.log(time); }; function delta() { //calculates time passed var now = Date.now(); //<--------------- var timePassed = now - offset; offset = now; return timePassed; }; function timeFormatter() {}; this.start = function(){ if(!this.isOn) { interval = setInterval(update,10); offset = Date.now(); //time when the stopwatch starts //<----------------- this.isOn = true; } }; this.stop = function(){ if(this.isOn) { clearInterval(interval); interval = null; this.isOn = false; } }; this.reset = function(){ time = 0; }; }
Comment