Cronometro Online (Con Giri)

Un cronometro preciso con tempi sul giro, che funziona direttamente nella scheda del browser — avvia, segna il giro, metti in pausa e azzera con un clic, senza bisogno di app.

910 visualizzazioni

00:00.00

Un cronometro che funziona e basta

Premi avvio e l'orologio scorre al centesimo di secondo; premi giro in qualsiasi momento per registrare un parziale senza fermare il conteggio, e ogni giro mostra sia la propria durata sia il tempo totale accumulato. Metti in pausa e riprendi liberamente, oppure azzera quando sei pronto a iniziare una nuova sessione.

Non c'è nessuna app da installare e niente da configurare — apri la pagina, premi avvio, e il timer funziona nella scheda esattamente per il tempo di cui hai bisogno, che si tratti di un intervallo di 30 secondi o di una sessione di più ore. Ogni giro registrato resta visibile in un elenco scorrevole, così puoi confrontare i parziali a colpo d'occhio invece di annotare i tempi separatamente. L'interfaccia funziona allo stesso modo su telefono e su desktop, quindi regge bene sia agganciata a un tapis roulant, sia appoggiata su un piano cucina, sia aperta su un portatile durante una prova.

Come Funziona il Cronometraggio

I browser espongono in realtà due orologi diversi a JavaScript: Date.now(), che segue l'orologio di sistema e può saltare avanti o indietro ogni volta che si risincronizza con un server NTP, e performance.now(), un orologio monotono che avanza soltanto in avanti e misura il tempo trascorso dal caricamento della pagina, con una risoluzione molto più fine. Questo cronometro usa performance.now(), quindi un giro resta accurato anche se l'orologio del computer viene corretto a metà sessione — cosa che un timer basato ingenuamente su Date farebbe visibilmente sbagliata. La visualizzazione stessa si aggiorna tramite requestAnimationFrame anziché un intervallo fisso come setInterval, il che mantiene i numeri fluidi e sincronizzati con la frequenza di aggiornamento dello schermo invece di scattare o derivare durante una sessione lunga. Questa distinzione è invisibile nell'uso quotidiano, ma è il motivo per cui un cronometro basato su browser può essere altrettanto affidabile di un timer hardware dedicato per qualsiasi cosa che non richieda una precisione da laboratorio.

  • Allenamenti e interval training — registra ogni ripetizione come un giro
  • Cucina — cronometra più passaggi senza perdere il conto del tempo complessivo
  • Prove di presentazioni e discorsi — tieni traccia dei tempi sezione per sezione
  • Qualsiasi attività con fasi distinte che vuoi confrontare fianco a fianco in seguito

Domande Frequenti

Resta preciso se cambio scheda?

Sì — la visualizzazione usa il tempo reale trascorso tramite performance.now(), non un contatore che si incrementa a intervalli fissi e può derivare quando la scheda va in background. I browser rallentano i timer in background come setInterval per risparmiare energia, ma poiché questo cronometro ricalcola sempre a partire dal tempo effettivamente trascorso invece di contare i tick, il tempo finale è corretto nel momento stesso in cui torni sulla scheda.

Quanti giri posso registrare?

Quanti ne vuoi in una singola sessione — l'elenco scorre, quindi non finisce mai lo spazio sullo schermo. I giri vengono conservati solo nella memoria della pagina, non scritti in nessun posto permanente, quindi si cancellano automaticamente nel momento in cui azzeri il cronometro o ricarichi la pagina.

I miei dati di cronometraggio vengono salvati da qualche parte?

No — esistono solo nella memoria della pagina finché la scheda resta aperta, e scompaiono nel momento in cui la lasci, la aggiorni o la chiudi. Niente viene inviato a un server e niente viene salvato in locale, quindi non c'è cronologia da cancellare né alcuna preoccupazione sulla privacy delle sessioni passate.

Qual è la differenza tra Date.now() e performance.now(), e perché è importante qui?

Date.now() riflette l'orologio di sistema, che può saltare se si risincronizza con un server orario, se l'utente cambia l'orario del proprio dispositivo, o se il dispositivo si risveglia dallo standby — una cattiva notizia per qualsiasi cosa misuri un intervallo. performance.now() è monotono: non torna mai indietro e misura il tempo trascorso dal caricamento della pagina con alta risoluzione, motivo per cui questo strumento lo usa per ogni giro e ogni totale in corso.

Perché il cronometro non mostra una precisione al microsecondo?

Potrebbe farlo in teoria — performance.now() è stato originariamente specificato con precisione inferiore al millisecondo — ma dal 2018 i browser ne hanno deliberatamente limitato la risoluzione, tipicamente a circa 0,1-1 millisecondo, come difesa contro attacchi di temporizzazione in stile Spectre/Meltdown, dove un timer sufficientemente preciso potrebbe essere usato per dedurre dati da altri processi. La visualizzazione al centesimo di secondo mostrata qui rientra comodamente in quel margine di sicurezza, e per allenamenti, cucina o prove è già molto più precisa di quanto un tempo di reazione umano possa mai richiedere.

Commenti

Ancora nessun commento — scrivi il primo!

Strumenti Simili