Hopp til hovedinnhold
LibraTool logoLibraTool

Gratis Datoforskjellskalkulator

Beregn den nøyaktige forskjellen mellom to datoer — år, måneder, dager, uker, arbeidsdager (ekskludert helger), timer og minutter.

Fungerer uten nett når den er lastet

Hurtige forhåndsinnstillinger

Velg begge datoer for å se forskjellen.

Vanlige bruksområder

  • Beregn dager til forventet fødselsdatoNedtelling til babyens forventede fødselsdato — finn ut nøyaktig hvor mange uker, dager og timer til den store dagen.
  • Dager til ferieturen dinNedtelling til turen din med arbeidsdager, totale dager og gjenværende uker for planleggingsformål.
  • Arbeidsdager til prosjektfristBeregn det nøyaktige antallet arbeidsdager (unntatt helger) mellom i dag og en prosjektfrist.
  • Beregn jubileumsdager sammenFinn ut nøyaktig hvor mange dager, måneder og år du har vært sammen med noen spesiell.
  • Aldersforskjellskalkulator mellom to personerBeregn den nøyaktige alderforskjellen mellom to fødselsdatoer — år, måneder og dager fra hverandre.

Hvordan det fungerer

All beregning kjører helt i nettleseren med håndskrevet UTC-aritmetikk — ingen eksterne biblioteker, ingen serverforespørsel. Verktøyet tolker ÅÅÅÅ-MM-DD-strenger til kalenderkomponenter, beregner forskjeller med millisekund-tidsstempler fra Date.UTC() for å unngå avvik fra sommertid, og går dag for dag for å telle arbeidsdager mandag–fredag.

  1. 1
    Trygg datotolking
    Hver datostreng valideres med et regex og bygges deretter opp igjen via Date.UTC() — ikke new Date(string) — slik at brukere vest for UTC aldri ser en ukedag forskyves på grunn av nettleserens tolkning av rene datoer i lokal tidssone.
  2. 2
    Subtraksjon av UTC-millisekunder
    De to kalenderdatoene gjøres om til tidsstempler for UTC-midnatt med Date.UTC(y, m, d). Heltallsdivisjon med 86 400 000 ms gir et eksakt antall hele dager som er immunt mot overganger til og fra sommertid, som ellers kan få en dag til å virke 23 eller 25 timer lang.
  3. 3
    Kalenderoppdeling og antall arbeidsdager
    En håndskrevet oppdeling i år/måned/dag håndterer ulike månedslengder (låner dager fra forrige måned ved behov). En egen løkke går gjennom hver UTC-dag mellom de to datoene og øker en teller bare for mandag–fredag (getUTCDay() !== 0 eller 6), noe som gir et eksakt antall arbeidsdager uansett språkinnstilling.
  4. 4
    Resultater vist i alle enheter
    Totalene formateres med toLocaleString() med sidens språk for språkbevisst siffergruppering, og vises samtidig som år/måneder/dager, totalt antall dager, arbeidsdager, uker, timer og minutter. Det gjeldende dato-paret skrives inn i URL-en via history.replaceState, så ethvert resultat kan bokmerkes eller deles som en direkte lenke.

Relaterte verktøy

Ofte stilte spørsmål