Giorni del fine settimana tra date
Gennaio 2024 contiene 8 giorni di fine settimana: 4 sabati e 4 domeniche. Inserisca due date qualsiasi e ottenga la stessa suddivisione per il suo periodo, estremi inclusi, per pianificare turni, straordinari o ferie. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Inizio
- 2024-01-01
- Fine
- 2024-01-31
- JDN inizio
- 2.460.311
- JDN fine
- 2.460.341
- Giorno sett. inizio
- Monday
- Giorno sett. fine
- Wednesday
Sapere quanti giorni del fine settimana cadono tra due date del calendario è un'esigenza pratica nei piani di personale, nelle regole sugli straordinari, nelle prenotazioni di viaggio, nella logistica di eventi e nel calcolo dei permessi. Chi cerca un contatore di sabati e domeniche tra date vuole totali separati o combinati, non un intervallo grezzo di giorni da filtrare a mano. Questo strumento accetta due date ISO rigorose in forma anno-mese-giorno, verifica che ogni giorno esista davvero nel calendario gregoriano —compresi i febbrai bisestili—, converte entrambe in numeri di giorno giuliano astronomico con una formula intera pura e riporta quanti sabati e domeniche cadono su ogni giorno civile dalla data precedente a quella successiva, entrambe incluse. L'ordine non altera i totali del fine settimana: la stessa coppia produce gli stessi conteggi di sabato e domenica sia che indichi prima il giorno precoce sia il tardivo, mentre la direzione con segno resta disponibile per pipeline cronologiche. Basi impossibili come il 29 febbraio in un anno comune falliscono con un errore di convalida chiaro invece di adattarsi in silenzio.
Come si contano sabati e domeniche in un intervallo di date
Inizi con due date civili scritte come anno, mese e giorno nella forma ISO internazionale con trattini e larghezze fisse così ogni client concorda sugli stessi sei interi. Per ogni stringa confermi che l'anno sia in un intervallo gregoriano pratico dall'anno uno al novemila novecentonovantanove, che il mese sia tra uno e dodici e che il giorno esista per quel mese secondo le regole bisestili gregoriane: un anno è bisestile se è divisibile per quattro, tranne che gli anni secolari lo sono solo se sono anche divisibili per quattrocento.
Questa regola rende legale il 29 febbraio in anni come 2024 e 2000, e illegale in 2023 e 1900. Quando entrambi i triple sono validi, converta ogni giorno civile in un numero di giorno giuliano astronomico con la formula intera di Fliegel e Van Flandern usata nella famiglia delle date. Prenda l'intervallo inclusivo dal numero di giorno minore al maggiore così l'ordine non cambia mai il conteggio.
Il giorno della settimana segue l'identità modulare giorno-della-settimana uguale a giorno giuliano più uno modulo sette, con domenica uguale a zero e sabato uguale a sei, in linea con il giorno civile dell'epoch Unix. Ogni settimana intera nell'intervallo contribuisce esattamente con un sabato e una domenica; l'eventuale resto di al massimo sei giorni viene scandito dal giorno della settimana iniziale, così intervalli pluriennali lunghi restano a tempo costante.
Dove compaiono i contatori del fine settimana nel lavoro reale
I responsabili operativi stimano la copertura del fine settimana per negozi, ospedali e call center a partire da una finestra definita da due date ISO. I team HR e paghe calcolano ore premium del fine settimana o diritti di riposo senza importare una libreria completa di calendario né affidarsi all'orologio del browser. Pianificatori di eventi e desk viaggi contano notti del fine settimana in un soggiorno o festival per fasce di prezzo e personale.
Gli ingegneri dei dati materializzano colonne derivate di esposizione al fine settimana, giorni di riposo di campagna e carico di reperibilità da due stringhe ISO in configurazione. Se in seguito le servono conteggi di giorni lavorativi che saltano fine settimana e festivi, settimane intere più giorni residui, addizione di giorni a una sola base o ordinali del giorno dell'anno, li tratti come intenti di ricerca e landing distinti invece di sovraccaricare questa pagina dei giorni del fine settimana tra date.
Casi d'uso
Personale e copertura del fine settimana
Conti sabati e domeniche in una finestra di turni per dimensionare squadre, reperibilità e paga premium senza una libreria completa di calendario.
Permessi e diritti di riposo
Ricavi quanti giorni del fine settimana cadono tra due date ISO di permesso per policy, viaggi e configurazione HR che ignora i fusi dell'host.
Eventi, soggiorni e campagne
Misuri notti o esposizione del fine settimana per festival, hotel e campagne marketing definite da due stringhe ISO di calendario.
Domande frequenti
Sono incluse entrambe le date estreme?
Sì. Si considera ogni giorno civile dalla data precedente a quella successiva inclusiva.
Cosa succede se una delle date non è valida?
Esempi: 2023-02-29, 2024-04-31, forme errate o campi mancanti. L'ingresso non valido non viene addebitato.
Salta le festività o usa fine settimana venerdì–sabato?
No. Conta solo sabato e domenica sul calendario gregoriano prolettico. Giorni lavorativi con festività e fine settimana personalizzati sono strumenti e pagine separate.
Quanto costa?
Lo strumento nel browser è gratuito e gira in locale.
Quanti giorni di fine settimana ha gennaio 2024?
Ne ha 8: 4 sabati e 4 domeniche distribuiti nei suoi 31 giorni. Inserisca 2024-01-01 come prima data e 2024-01-31 come seconda per vedere il conteggio separato tra sabati e domeniche.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/date/weekend-count \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"start":"2024-01-01","end":"2024-01-31"}'const res = await fetch("https://api.kit.forhosting.com/date/weekend-count", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"start": "2024-01-01",
"end": "2024-01-31"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/weekend-count",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"start": "2024-01-01",
"end": "2024-01-31"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/weekend-count", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"start":"2024-01-01","end":"2024-01-31"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"start":"2024-01-01","end":"2024-01-31"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/weekend-count", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"start": "2024-01-01",
"end": "2024-01-31"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.weekend_count",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Cosa invia e cosa riceve in risposta
Invii due campi stringa obbligatori: start e end, ciascuno un giorno di calendario ISO rigoroso come 2024-01-01 e 2024-01-31. Controlli classici includono il mese intero di gennaio 2024 con quattro sabati e quattro domeniche (otto giorni del fine settimana), un intervallo di un solo sabato nello stesso giorno con saturdays uguale a uno, e una settimana lavorativa da lunedì a venerdì con zero giorni del fine settimana. Campi mancanti, valori non stringa, stringhe che non corrispondono al pattern a quattro-due-due cifre e date che corrispondono al pattern ma non sono giorni reali del calendario falliscono con invalid_input e non vengono addebitati. In caso di successo la risposta ripete le stringhe ISO normalizzate di inizio e fine, il numero di giorno giuliano di ciascun lato, i nomi inglesi del giorno della settimana di entrambi gli estremi, signed_days come fine meno inizio, total_days_inclusive come il numero di giorni civili nell'intervallo chiuso, saturdays e sundays come conteggi interi separati, weekend_days come la loro somma, un flag direction di forward, backward o same, e una breve stringa formula che documenta il percorso JDN. Il prezzo delle chiamate API riuscite è la base pubblicata di $0.002 per voce; i fallimenti di convalida non consumano il saldo prepagato.
Dove compaiono i contatori del fine settimana nel lavoro reale
Poiché questa capacità è un motore di parse puro, il prezzo API è la base pubblicata di $0.002 per voce riuscita e la convalida fallita non consuma saldo.
Domande tecniche
L'ordine di ingresso cambia il conteggio del fine settimana?
No. Per saturdays, sundays e weekend_days si usa l'intervallo inclusivo assoluto. signed_days e direction riflettono ancora fine meno inizio per pipeline cronologiche.