Bestimmten Wochentag im Jahr eines ISO-Datums zählen
Ermitteln Sie genau, wie viele Montage, Freitage, Sonntage oder andere Wochentage das Kalenderjahr eines ausdrücklich angegebenen ISO-Datums enthält.
Im Browser ausführen – kostenlos
Der Rechner validiert das vollständige Datum, entnimmt ihm das Jahr und wendet die Regeln des gregorianischen Kalenders mit deterministischer Ganzzahlarithmetik an. Er ist weder von der Systemuhr noch von Regions-, Zeitzonen- oder Sommerzeiteinstellungen und auch nicht von einem Datumsparser abhängig. Das Ergebnis nennt den normalisierten Wochentag, die Anzahl, den Schaltjahrstatus, die Jahreslänge und den Wochentag des 1. Januar.
Geben Sie Datum und Wochentag ausdrücklich an
Übermitteln Sie ein Datum exakt im Format YYYY-MM-DD und einen Wochentagsnamen wie Monday, Tuesday oder Friday. Das ausdrückliche Datum bestimmt das zu untersuchende Kalenderjahr; Monat und Tag begrenzen den Zählzeitraum nicht. Sowohl 2024-01-01 als auch 2024-11-30 wählen beispielsweise das gesamte Jahr 2024 aus. Trotzdem muss das vollständige Datum einen echten gregorianischen Kalendertag bezeichnen. Unmögliche Eingaben wie 2023-02-29 oder ein dreizehnter Monat werden daher abgelehnt und nicht stillschweigend korrigiert. Bei Wochentagsnamen wird die Groß- und Kleinschreibung ignoriert; geläufige englische Abkürzungen mit drei Buchstaben wie Mon, Wed und Sat sind ebenfalls zulässig. Die Antwort wiederholt das ursprüngliche Datum, bezeichnet das gewählte Jahr, normalisiert den Wochentag auf seinen vollständigen englischen Namen und liefert einen am Sonntag beginnenden Index. Durch diese klaren Eingaben hängt die Berechnung nicht vom aktuellen Datum ab. Gespeicherte Anfragen bleiben dauerhaft reproduzierbar und eignen sich für Formulare, geplante Aufgaben, Tabellen und Prüfprotokolle.
So entsteht die deterministische Anzahl
Ein gewöhnliches gregorianisches Jahr hat 365 Tage, also genau 52 vollständige Wochen und einen zusätzlichen Tag. Ein Schaltjahr hat 366 Tage, somit 52 vollständige Wochen und zwei zusätzliche Tage. Jeder Wochentag kommt deshalb mindestens 52-mal vor. In einem gewöhnlichen Jahr erscheint der Wochentag des 1. Januar ein dreiundfünfzigstes Mal. In einem Schaltjahr kommen die Wochentage des 1. und 2. Januar jeweils 53-mal vor. Zunächst gilt die gregorianische Schaltjahrregel: Durch vier teilbare Jahre sind Schaltjahre, Jahrhundertjahre jedoch nur, wenn sie zusätzlich durch 400 teilbar sind. Danach berechnet das Programm den Wochentag des 1. Januar mit begrenzter Ganzzahlarithmetik und prüft, ob der gewählte Tag zu den überzähligen Tagen gehört. Es wird kein JavaScript-Date-Objekt erzeugt. Dadurch entfallen umgebungsabhängiges Parsen, Systemzeitzonen, Zeitumstellungen und regionale Unterschiede. Jahreslänge, Schaltjahrangabe und Startwochentag machen eine Antwort von 52 oder 53 unmittelbar nachvollziehbar.
Nutzen Sie das Ergebnis für Planung und Prüfung
Die Anzahl hilft überall dort, wo eine Jahresschätzung von einem wöchentlich wiederkehrenden Ereignis abhängt. Lohnbuchhaltungen können reguläre Freitagszahlungen ermitteln, bevor Feiertage berücksichtigt werden. Betriebsteams können Öffnungsmontage schätzen, Schulen mögliche Unterrichtstage bestimmen und Analysten Kalenderdimensionen anderer Systeme prüfen. Verstehen Sie das Ergebnis als reine Kalenderzählung und nicht als Zahl der Arbeitstage. Feiertage, Betriebsschließungen, Urlaub, regionale Gedenktage und Sonderpläne bleiben bewusst unberücksichtigt, weil dafür eine Region und eine Richtlinie benötigt würden, die nicht Teil der Eingabe sind. Falls solche Ausschlüsse wichtig sind, verwenden Sie die Anzahl als transparente Grundlage und ziehen Sie Termine nach Ihrem eigenen Kalender ab. Das ausdrückliche ISO-Datum erleichtert zudem Abläufe, in denen bereits ein Berichtsdatum vorliegt. Browser und API verwenden denselben reinen Algorithmus; automatisierte API-Anfragen kosten $0.002.
Anwendungsfälle
Wiederkehrende Arbeitstage schätzen
Zählen Sie alle Vorkommen eines geplanten Wochentags im Berichtsjahr, bevor Sie Feiertage oder Schließungen abziehen.
Abrechnungskalender kontrollieren
Prüfen Sie, ob ein wöchentlicher Zahltag im Jahr des Abrechnungsdatums 52- oder 53-mal vorkommt.
Kalenderdaten validieren
Vergleichen Sie die Wochentagssummen eines erzeugten Jahreskalenders mit einer deterministischen gregorianischen Referenz.
Häufige Fragen
Was kostet eine API-Anfrage?
Jede API-Anfrage kostet $0.002.
Warum muss ich ein vollständiges Datum statt nur eines Jahres angeben?
Das validierte, ausdrückliche ISO-Datum liefert das Jahr und passt zu Abläufen mit vorhandenen Berichts- oder Referenzdaten.
Kann ein Wochentag in einem Jahr mehr als 53-mal vorkommen?
Nein. Ein gregorianisches Jahr umfasst 52 vollständige Wochen und nur einen oder zwei zusätzliche Tage.
Werden Feiertage abgezogen?
Nein. Das Ergebnis zählt nur Kalendertage und wendet keine regionalen oder betrieblichen Feiertagsregeln an.
Beeinflusst die Zeitzone das Ergebnis?
Nein. Verwendet werden ausschließlich das geschriebene ISO-Datum und gregorianische Ganzzahlarithmetik, ohne lokale Uhr oder Date-Parsing.
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/count-weekday-in-year \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-06-15","weekday":"Monday"}'const res = await fetch("https://api.kit.forhosting.com/date/count-weekday-in-year", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-06-15",
"weekday": "Monday"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/count-weekday-in-year",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-06-15",
"weekday": "Monday"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/count-weekday-in-year", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-06-15","weekday":"Monday"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-06-15","weekday":"Monday"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/count-weekday-in-year", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"date": "2024-06-15",
"weekday": "Monday"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.count_weekday_in_year",
"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. |