Liigu põhisisu juurde

Kuupäeva erinevuse kalkulaator tasuta

Arvuta täpne erinevus kahe kuupäeva vahel — aastad, kuud, päevad, nädalad, tööpäevad (nädalavahetused välja jättes), tunnid ja minutid.

Töötab võrguühenduseta pärast laadimist

Kiireelseaded

Erinevuse nägemiseks valige mõlemad kuupäevad.

Levinud kasutusviisid

  • Arvutage päevad sünnitamise kuupäevaniLoendage maha beebi sünnitamise kuupäevani — teadke täpselt, mitu nädalat, päevat ja tundi jääb suurele päevale.
  • Päevad teie puhkuseniLoendage maha oma reisini tööpäevade, kokku päevade ja ülejäänud nädala plaanimisega.
  • Tööpäevad projekti tähtajaniArvutage täpne arv tööpäevade (ilma nädalalõpudeta) tänase ja projekti tähtaja vahel.
  • Arvutage aastapäeva päevad koosTeadke täpselt, mitu päeva, kuud ja aastat olete koos kellegi erilisega.
  • Vanusevahe kalkulaator kahe isiku vahelArvutage täpne vanusevahe kahe sünnipäeva vahel — aastad, kuud ja päevad eraldatust.

Kuidas see töötab

Kogu arvutus töötab täielikult brauseris käsitsi kirjutatud UTC aritmeetika abil — välist teeki ega serveripäringut pole. Tööriist parsib AAAA-KK-PP stringid kalendrikomponentidena, arvutab erinevused Date.UTC() millisekundiliste ajatemplitega, et vältida suveaja nihkumist, ning itereerib päev-päeva haaval, et loendada esmaspäev-reede tööpäevi.

  1. 1
    Turvaline kuupäevaparsimine
    Iga kuupäevastring valideeritakse regulaaravaldisega ja seejärel rekonstrueeritakse Date.UTC() kaudu — mitte new Date(string) — nii et UTC-st läänes olevad kasutajad ei näe kunagi nädalapäeva nihkumist, mille põhjustab brauseri kohaliku ajavööndi tõlgendus ainult-kuupäevaga sisenditest.
  2. 2
    UTC millisekundiline lahutamine
    Kaks kalendrikuupäeva teisendatakse UTC kesköö ajatempliteks Date.UTC(y, m, d) abil. Täisarvuline jagamine 86 400 000 ms-ga annab täpse täispäevade arvu, mis on immuunne suveaja üleminekute suhtes, mis muidu võiksid muuta päeva 23- või 25-tunniseks.
  3. 3
    Kalendrijaotus ja tööpäevade loendamine
    Käsitsi kirjutatud aasta/kuu/päev lahutus käsitleb kuu-pikkuse ebakorrapärasusi (laenates vajadusel päevi eelnevast kuust). Eraldi tsükkel astub läbi iga UTC päeva kahe kuupäeva vahel ja suurendab loendurit ainult esmaspäev-reede jaoks (getUTCDay() !== 0 või 6), tootes täpse tööpäevade kogusumma sõltumata keelekeskkonnast.
  4. 4
    Tulemused kuvatud kõigis ühikutes
    Summad vormindatakse toLocaleString() abil, kasutades lehe keelekeskkonda numbrite grupeerimiseks, ning näidatakse seejärel samaaegselt aastate/kuude/päevadena, päevade kogusummana, tööpäevadena, nädalatena, tundidena ja minutitena. Praegune kuupäevapaar kirjutatakse URL-i history.replaceState abil, nii et mis tahes tulemuse saab järjehoidjatesse lisada või jagada otseselt lingina.

Seotud tööriistad

Korduma kippuvad küsimused