Online stopwatch (met rondetijden)

Een nauwkeurige stopwatch met rondetijden, in uw browsertabblad — start, ronde nemen, pauzeren en resetten met één klik, geen app nodig.

908 weergaven

00:00.00

Een stopwatch die gewoon werkt

Druk op start en de klok loopt tot op de honderdste seconde nauwkeurig; druk op elk moment op ronde om een tussentijd vast te leggen zonder de telling te stoppen, en elke ronde toont zowel de eigen duur als de lopende totaaltijd. Pauzeer en hervat vrij, of reset naar nul zodra u klaar bent voor een nieuwe sessie.

Er is geen app te installeren en niets in te stellen — open de pagina, druk op start, en de timer loopt in het tabblad precies zolang als u nodig heeft, of dat nu een interval van 30 seconden is of een sessie van meerdere uren. Elke ronde die u vastlegt blijft zichtbaar in een scrollbare lijst, zodat u tussentijden in één oogopslag kunt vergelijken in plaats van tijden apart te noteren. De interface werkt op de telefoon net zo goed als op de desktop, dus hij presteert net zo goed vastgeklikt aan een loopband, neergezet op een keukenblad, of geopend op een laptop tijdens een repetitie.

Hoe de tijdmeting werkt

Browsers stellen JavaScript eigenlijk twee verschillende klokken beschikbaar: Date.now(), die de systeemklok volgt en vooruit of achteruit kan springen zodra deze opnieuw synchroniseert met een NTP-tijdserver, en performance.now(), een monotone klok die alleen maar vooruitloopt en de verstreken tijd sinds het laden van de pagina meet met veel fijnere resolutie. Deze stopwatch gebruikt performance.now(), zodat een ronde nauwkeurig blijft, zelfs als de systeemklok van uw computer midden in een sessie wordt aangepast — iets wat een naïeve, op Date gebaseerde timer zichtbaar fout zou berekenen. Het scherm zelf werkt bij via requestAnimationFrame in plaats van een vast interval zoals setInterval, waardoor de cijfers vloeiend blijven renderen in sync met de ververssnelheid van uw scherm, in plaats van te haperen of af te wijken tijdens een lange sessie. Dat verschil is onzichtbaar in het dagelijks gebruik, maar het is precies de reden waarom een browsergebaseerde stopwatch net zo betrouwbaar kan zijn als een speciale hardwaretimer, voor alles behalve metingen op laboratoriumniveau.

  • Trainingen en intervaltraining — leg elke ronde apart vast
  • Koken — tijd meerdere stappen zonder de totale tijd uit het oog te verliezen
  • Presentatie- en spreekrepetities — volg de tijd sectie voor sectie
  • Elke taak met duidelijke fases die u achteraf naast elkaar wilt vergelijken

Veelgestelde vragen

Blijft het nauwkeurig als ik van tabblad wissel?

Ja — de weergave gebruikt de verstreken kloktijd via performance.now(), geen teller die met een vast interval oploopt en kan afwijken zodra het tabblad naar de achtergrond gaat. Browsers vertragen achtergrondtimers zoals setInterval wel om stroom te besparen, maar omdat deze stopwatch altijd opnieuw berekent vanaf de daadwerkelijk verstreken tijd in plaats van ticks te tellen, klopt de eindtijd op het moment dat u terugschakelt.

Hoeveel rondes kan ik vastleggen?

Zoveel als u wilt binnen één sessie — de lijst scrolt, dus er raakt nooit ruimte op het scherm op. Rondes worden alleen in het geheugen van de pagina bewaard, nergens permanent weggeschreven, dus ze worden automatisch gewist zodra u de stopwatch reset of de pagina herlaadt.

Wordt mijn tijdsdata ergens opgeslagen?

Nee — het bestaat alleen in het geheugen van de pagina zolang het tabblad open blijft en verdwijnt op het moment dat u de pagina verlaat, vernieuwt of sluit. Er wordt niets naar een server gestuurd en niets lokaal opgeslagen, dus er is geen geschiedenis om te wissen en geen privacyzorg over eerdere sessies.

Wat is het verschil tussen Date.now() en performance.now(), en waarom is dat hier belangrijk?

Date.now() volgt de systeemklok, die kan springen wanneer deze opnieuw synchroniseert met een tijdserver, wanneer de gebruiker de klok aanpast, of wanneer het apparaat uit slaapstand ontwaakt — slecht nieuws voor alles wat een interval meet. performance.now() is monotoon: hij springt nooit terug en meet de verstreken tijd sinds het laden van de pagina met hoge resolutie, en daarom gebruikt dit hulpmiddel deze klok voor elke ronde en elke lopende totaaltijd.

Waarom toont de stopwatch geen precisie op microsecondeniveau?

Dat zou in theorie kunnen — performance.now() werd oorspronkelijk gespecificeerd met een precisie onder de milliseconde — maar sinds 2018 begrenzen browsers de resolutie bewust, doorgaans tot ongeveer 0,1–1 milliseconde, als verdediging tegen timingaanvallen in de stijl van Spectre/Meltdown, waarbij een voldoende precieze timer gebruikt zou kunnen worden om gegevens van andere processen af te leiden. De hier getoonde weergave in honderdsten van een seconde valt ruim binnen die veilige marge, en voor trainingen, koken of repetities is dat al veel preciezer dan een menselijke reactietijd ooit nodig zou hebben.

Reacties

Nog geen reacties — schrijf de eerste!

Vergelijkbare tools