Comptez un jour précis dans l’année d’une date ISO
Comptez précisément combien de lundis, vendredis, dimanches ou autres jours de la semaine figurent dans l’année civile désignée par une date ISO explicite.
Lancer gratuitement
Le calculateur valide la date entière, en extrait l’année et applique les règles du calendrier grégorien avec une arithmétique entière déterministe. Il ne dépend ni de l’horloge de la machine, ni des paramètres régionaux, ni des changements d’heure, ni d’un analyseur de dates. Le résultat indique le jour normalisé, le nombre d’occurrences, l’état bissextile, la durée de l’année et le jour du 1er janvier.
Indiquez une date explicite et un jour de la semaine
Envoyez une date écrite exactement sous la forme YYYY-MM-DD et un nom de jour tel que Monday, Tuesday ou Friday. La date explicite détermine l’année civile à examiner ; son mois et son jour ne réduisent pas la période du décompte. Ainsi, 2024-01-01 et 2024-11-30 désignent tous deux l’intégralité de 2024. La date complète doit néanmoins correspondre à un véritable jour grégorien : une valeur impossible comme 2023-02-29 ou un treizième mois est rejetée au lieu d’être corrigée silencieusement. La casse des noms de jours est ignorée, et les abréviations anglaises usuelles de trois lettres, notamment Mon, Wed et Sat, sont acceptées. La réponse reprend la date originale, précise l’année choisie, normalise le jour sous son nom anglais complet et fournit un indice commençant au dimanche. Ces deux entrées explicites suppriment toute dépendance à la date courante et garantissent qu’une requête archivée reste reproductible. Elles conviennent aussi aux formulaires, tâches planifiées, feuilles de calcul et pistes d’audit.
Comprenez le calcul déterministe
Une année grégorienne ordinaire compte 365 jours, soit exactement 52 semaines complètes et un jour supplémentaire. Une année bissextile en compte 366, soit 52 semaines complètes et deux jours supplémentaires. Chaque jour de la semaine apparaît donc au moins 52 fois. Dans une année ordinaire, le jour correspondant au 1er janvier apparaît une cinquante-troisième fois. Dans une année bissextile, les jours des 1er et 2 janvier apparaissent chacun 53 fois. Le calculateur applique d’abord la règle grégorienne : les années divisibles par quatre sont bissextiles, sauf les années séculaires qui ne sont pas aussi divisibles par 400. Il détermine ensuite le jour du 1er janvier par arithmétique entière et vérifie si le jour choisi appartient aux un ou deux jours supplémentaires. Aucun objet JavaScript Date n’est créé. Cette méthode évite l’analyse propre à l’environnement, les fuseaux du système, l’heure d’été et les variations régionales. La durée de l’année, l’indicateur bissextile et le jour du 1er janvier rendent le résultat 52 ou 53 directement vérifiable.
Exploitez le résultat pour planifier et contrôler
Ce décompte est utile lorsqu’une estimation annuelle dépend d’un événement hebdomadaire récurrent. Les équipes de paie peuvent déterminer le nombre de vendredis de versement avant de tenir compte des jours fériés. Les services opérationnels peuvent estimer les lundis d’ouverture, les établissements scolaires les journées d’enseignement possibles, et les analystes peuvent contrôler une dimension calendrier produite par un autre système. Considérez le résultat comme un pur total calendaire, et non comme un nombre de jours ouvrés. Les jours fériés, fermetures internes, congés, fêtes régionales et horaires exceptionnels sont volontairement exclus, car ils exigeraient une juridiction et une politique absentes des entrées. Si ces exclusions comptent, prenez ce nombre comme référence transparente puis retranchez les dates selon votre calendrier. La date ISO explicite facilite également les traitements qui possèdent déjà une date de rapport. Le navigateur et l’API utilisent le même solveur pur, et les requêtes automatisées coûtent $0.002.
Cas d’usage
Estimer des jours de travail récurrents
Comptez toutes les occurrences d’un jour planifié dans l’année du rapport avant de retrancher congés ou fermetures.
Contrôler les calendriers de paie
Vérifiez si un jour de versement hebdomadaire apparaît 52 ou 53 fois dans l’année associée à une date de paie.
Valider des données calendaires
Comparez les totaux hebdomadaires d’un calendrier annuel généré à une référence grégorienne déterministe.
Questions fréquentes
Quel est le prix d’une requête API ?
Chaque requête API coûte $0.002.
Pourquoi faut-il fournir une date complète plutôt qu’une année ?
La date ISO explicite et validée fournit l’année et s’intègre aux processus utilisant déjà une date de rapport ou de référence.
Un jour peut-il apparaître plus de 53 fois dans une année ?
Non. Une année grégorienne contient 52 semaines complètes et seulement un ou deux jours supplémentaires.
Les jours fériés sont-ils exclus ?
Non. Le résultat compte uniquement les jours calendaires et n’applique aucune règle régionale ou interne de congé.
Le fuseau horaire change-t-il le résultat ?
Non. Le calcul utilise seulement la date ISO écrite et une arithmétique grégorienne entière, sans horloge locale ni analyse Date.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre 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)Exemple de requête
{
"date": "2024-06-15",
"weekday": "Monday"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.count_weekday_in_year",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |