Monate zwischen zwei Daten
Geben Sie zwei Daten ein und erhalten Sie die ganzen Monate dazwischen plus die Resttage: Vom 15. Januar 2024 bis zum 10. März 2025 sind es 13 Monate und 23 Tage. Monatsenden werden angepasst, der 31. Januar plus ein Monat ist Ende Februar. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- ISO-Startdatum
- 2024-01-15
- ISO-Enddatum
- 2025-03-10
- Von-Datum
- 2024-01-15
- Bis-Datum
- 2025-03-10
- Monate
- 13
- Tage
- 23
Verträge, Mietpläne, das Alter von Säuglingen in Monaten, Abonnement-Meilensteine und Projektzeitpläne benötigen oft mehr als eine rohe Tageszahl: Sie müssen wissen, wie viele ganze Kalendermonate zwischen zwei Daten passen und wie viele Tage nach diesen Monaten übrig bleiben. Dieser Rechner für Monate zwischen zwei Daten akzeptiert ein Paar von ISO-Kalenderdaten, validiert jeden Tag nach den gregorianischen Schaltjahrregeln mit reiner Ganzzahlarithmetik, rückt das frühere Datum Monat für Monat mit Begrenzung am Monatsende vor und liefert ein strukturiertes Ergebnis aus ganzen Monaten plus Resttagen, das Formulare, Tabellen und APIs verankern können, ohne Kalender-Sonderfälle neu zu implementieren.
Ganze Monate plus Resttage
Verträge, Mietpläne, das Alter eines Babys in Monaten, Abo-Meilensteine und Projektzeitpläne brauchen oft mehr als eine bloße Tageszahl: Gefragt ist, wie viele ganze Kalendermonate zwischen zwei Daten passen und wie viele Tage danach übrig bleiben. Der Rechner geht vom früheren Datum Monat für Monat vorwärts, solange er das spätere Datum nicht überschreitet, und zählt den Rest in Tagen. Vom 15. Januar 2024 bis zum 10. März 2025 ergibt das 13 Monate und 23 Tage, insgesamt 420 Tage. Uhrzeiten dürfen dabei stehen, zählen aber nicht mit.
Monatsenden, Richtung und typische Stolpersteine
Beginnt die Spanne an einem Monatsende, wird angepasst: Ein Monat nach dem 31. Januar ist der letzte Tag im Februar und kein Datum im März. Liegt das Enddatum vor dem Startdatum, bleiben Monate und Tage positiv, die Richtung wird aber als rückwärts markiert. Häufige Fehler sind, mit einem Durchschnittswert pro Monat statt mit echten Kalendermonaten zu rechnen, den Monat ab dem 31. ins Folgemonat rutschen zu lassen und unmögliche Daten wie den 30. Februar einzugeben; solche Daten werden abgelehnt, statt still in den nächsten Monat zu wandern.
ISO-Daten für from und to wählen und welche Formate akzeptiert werden
Senden Sie zwei Zeichenkettenfelder namens from und to. Jeder Wert sollte ein ISO-Kalenderdatum mit vierstelligem Jahr, Monat und Tag sein, zum Beispiel zweitausendvierundzwanzig Bindestrich null eins Bindestrich fünfzehn. Sie können auch einen vollständigen ISO-8601-Datetime-Wert mit Stunden, Minuten, Sekunden, optionalen Sekundenbruchteilen, einem abschließenden Z für UTC oder einem numerischen Versatz wie plus null zwei Doppelpunkt null null senden.
Wenn eine Uhrzeit vorhanden ist, validiert die Engine die Zeitfelder, sodass unmögliche Stunden abgelehnt werden, doch für die Berechnung ganzer Monate und Resttage wird nur der zivile Teil aus Jahr, Monat und Tag verwendet — das hält das Produkt ehrlich für Menschen, die nach Monaten zwischen zwei Daten suchen und nicht nach einem Countdown auf Sekundenebene. Jahre sind auf eins bis neuntausendneunhundertneunundneunzig begrenzt, Monate auf eins bis zwölf, und Tage müssen in diesem Monat existieren, einschließlich des neunundzwanzigsten Februars im Schaltjahr, sofern zutreffend.
Typische Einsätze und praktische Grenzen
Rufen Sie das kostenlose Werkzeug für Monate zwischen zwei Daten im Browser für Mietrechner, das Alter von Babys in Monaten, Prüfungen von Vertragsjubiläen und Unterrichtsdemos auf, ohne Moment-Bibliotheken oder Zeitzonendatenbanken zu installieren. Kombinieren Sie diesen Endpunkt mit einem Countdown-zwischen-zwei-Daten-Werkzeug, wenn Sie zusätzlich Stunden und Sekunden für einen Starttimer benötigen, oder mit einem Tage-im-Monat-Rechner, wenn Sie zuerst Februarlängen validieren, bevor Sie Zeitpläne erstellen.
Bleiben Sie ehrlich mit den Erwartungen: Dieses Produkt misst ganze gregorianische Kalendermonate und übrige Tage zwischen zwei expliziten Daten; es erfindet kein Heute aus der Serveruhr, überspringt keine Wochenenden als Geschäftsmonate und lädt keine Feiertagskalender. Quelleingaben unterliegen denselben Aufbewahrungsregeln wie andere KIT-parse-Einträge.
Anwendungsfälle
Alter in Monaten für Säuglinge und Pädiatrie
Gesundheits- und Eltern-Apps berechnen, wie viele ganze Monate und Tage seit einem Geburtsdatum vergangen sind — ohne Gleitkomma-Monatsdurchschnitte oder Zeitzonenabweichungen des Hosts.
Abonnement- und Projektmeilensteine
Abrechnungs- und Projekt-Dashboards messen Zugehörigkeit oder Phasenlänge zwischen zwei festen ISO-Daten und drehen die Formulierung mit direction um, wenn ein Zieldatum bereits vergangen ist.
Häufige Fragen
Was passiert bei einem ungültigen Datum?
Falsche ISO-Form, unmögliche Kalendertage wie der 30. Februar und Werte außerhalb des Bereichs werden abgelehnt und nicht berechnet.
Verwendet es die Serveruhr oder das JavaScript-Date?
Nein. Beide Daten stammen aus Ihren Eingabezeichenketten. Die Engine nutzt reine gregorianische Monatsarithmetik ohne Date, Netzwerk oder Zufall, sodass die Ergebnisse vollständig deterministisch sind.
Wie werden Monate gezählt, wenn das Startdatum ein 31. ist?
Mit Monatsend-Anpassung: Ein Monat nach dem 31. Januar ist der letzte Tag im Februar, kein Datum im März. Der Rechner geht so Monat für Monat vorwärts und zählt die übrigen Tage gesondert.
Was passiert, wenn das Enddatum vor dem Startdatum liegt?
Sie erhalten weiterhin positive Monate und Tage für die Spanne, dazu eine als rückwärts markierte Richtung und Werte mit Minuszeichen, damit Sie sehen, dass das Zieldatum schon vorbei ist.
Kann ich ein Datum mit Uhrzeit eingeben?
Ja. Eine vollständige Zeitangabe mit Z oder Offset wird angenommen und ihre Uhrzeit geprüft, für Monate und Tage zählt aber nur das Kalenderdatum, sodass die Uhrzeit das Ergebnis nie ändert.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/date/months-between \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"from":"2024-01-15","to":"2025-03-10"}'const res = await fetch("https://api.kit.forhosting.com/date/months-between", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"from": "2024-01-15",
"to": "2025-03-10"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/months-between",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"from": "2024-01-15",
"to": "2025-03-10"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/months-between", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"from":"2024-01-15","to":"2025-03-10"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"from":"2024-01-15","to":"2025-03-10"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/months-between", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"from": "2024-01-15",
"to": "2025-03-10"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.months_between",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Der Pfad berührt niemals die Systemuhr, Zufall oder das Netzwerk, sodass identische from- und to-Zeichenketten stets identisches JSON erzeugen, in der kontinuierlichen Integration wie in der Produktion. Ungültige Formen und unmögliche Daten wie der dreißigste Februar schlagen mit invalid_input fehl und werden nicht berechnet.
ISO-Daten für from und to wählen und welche Formate akzeptiert werden
Die Aliase start, begin und start_date werden auf from abgebildet; end, until, end_date und target auf to, passend zu üblichen Formular- und API-Namen. Beide Felder sind Pflicht: Das Weglassen eines der beiden, das Senden eines Nicht-Strings oder leerer Leerraum lösen invalid_input aus, das die fehlende Seite benennt. Alles außerhalb dieser Bereiche gilt als invalid_input, statt still in den nächsten Monat überzulaufen.
months, days, total_days, vorzeichenbehaftete Felder und direction lesen
Die Felder months und days sind stets nicht negativ und beschreiben zusammen die absolute zivile Spanne: months ist die größte Anzahl ganzer Monate, um die Sie vom früheren Datum vorrücken können, ohne das spätere zu überschreiten — mit Begrenzung am Monatsende, sodass der einunddreißigste Januar plus ein Monat auf dem letzten Tag des Februars landet. Das Feld days ist die verbleibende zivile Tagesdifferenz nach diesem Vorrücken, sodass eine Spanne von Mitte Januar bis Anfang März etwa einen Monat und einige Dutzend Tage meldet statt nur einer reinen Tagessumme. Bei Erfolg spiegelt die Antwort die ursprünglichen from- und to-Zeichenketten sowie die normalisierten from_date und to_date als YYYY-MM-DD. Das Feld total_days ist die absolute Differenz der zivilen Tagesnummern zwischen beiden Daten und nützlich, wenn Sie zusätzlich eine ungeordnete Tageszahl benötigen. Liegt das Ende vor dem Beginn, ist is_past true, direction ist backward, und signed_months sowie signed_days_remainder tragen ein negatives Vorzeichen, während months und days für die Anzeige nicht negativ bleiben. Stimmen beide Daten überein, ist is_zero true, direction ist zero und jede Größe ist null. Verwenden Sie months und days für verständliche Texte, total_days zum Sortieren nach Länge und direction, wenn die Produktsprache zwischen verbleibend und überfällig unterscheiden muss.
API-Nutzung, Preise, Produkt-Workflows und praktische Grenzen
Senden Sie einen JSON-Body mit den Pflicht-Zeichenkettenfeldern from und to als ISO-Daten. Nutzen Sie die vorausbezahlte API, wenn ein Abrechnungssystem, ein HR-Board für Betriebszugehörigkeit, eine Immobilienplattform oder ein Projektplaner einen stabilen Vertrag mit KIT-Guthaben zu $0.002 pro erfolgreichem Eintrag benötigt; Validierungsfehler verbrauchen nach der Ablehnung der Anfrage durch die Engine niemals Guthaben. Autoren von SDKs können months und days direkt auf zwei numerische Widgets abbilden und die Gestaltung für überfällige Fälle aus is_past steuern — mit derselben Antwortform in jeder Sprachbindung.
Integrationsbeispiele
Miet- und Vertragslaufzeiten
Immobilien- und Rechtswerkzeuge übergeben Beginn und Ende des Mietvertrags als ISO-Daten, zeigen ganze Monate plus Resttage auf der Übersichtsseite und speichern total_days zum Sortieren aktiver Verträge.
Technische Fragen
Wie erhalte ich die Monate zwischen zwei Daten?
Senden Sie JSON mit from und to als ISO-Daten (zum Beispiel from: "2024-01-15" und to: "2025-03-10"). Die Antwort enthält months, days, total_days und eine formatierte Zeichenkette.
Was gilt, wenn das Ende vor dem Beginn liegt?
months und days bleiben für die absolute Spanne nicht negativ, signed_months und signed_days_remainder sind negativ, is_past ist true und direction ist backward.
Ist der Rechner für Monate zwischen zwei Daten kostenlos?
Das Browser-Werkzeug läuft kostenlos auf Ihrem Gerät. API-Aufrufe nutzen vorausbezahltes KIT-Guthaben zu $0.002 pro erfolgreichem Eintrag; Validierungsfehler werden nicht berechnet.