ForHosting KIT · Date e tempo

Intersezione di intervalli

Inserisca due intervalli di tempo e ottenga la parte che condividono: dalle 10:00 alle 12:00 e dalle 11:00 alle 13:00 UTC si sovrappongono dalle 11:00 alle 12:00, un'ora esatta. Se si toccano soltanto, il risultato è vuoto. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Inizio dell'intervallo A
2020-01-01T10:00:00.000Z
Fine dell'intervallo A
2020-01-01T12:00:00.000Z
Inizio dell'intervallo B
2020-01-01T11:00:00.000Z
Fine dell'intervallo B
2020-01-01T13:00:00.000Z
Ottiene
Inizio dell’intersezione
2020-01-01T11:00:00.000Z
Fine dell’intersezione
2020-01-01T12:00:00.000Z
Durata dell’intersezione (millisecondi)
3.600.000
Durata dell’intersezione (ore)
1

Calcola la sovrapposizione di due intervalli ISO con ordine stretto, durata in millisecondi e ore. Gratis, deterministico e privato nel browser.

Che cosa significa che due intervalli si sovrappongono

Due intervalli di tempo si sovrappongono quando esiste un tratto che appartiene a entrambi. Pensi a due prenotazioni di una sala o a due finestre di incidenti su un pannello di assistenza: la domanda non è quanto dura ciascuno, ma quale parte hanno in comune. La regola è breve. Il tratto comune inizia dal più tardivo dei due inizi e finisce al più anticipato dei due termini. Se quell'inizio viene strettamente prima di quel termine, c'è sovrapposizione e lei ottiene il tratto con la durata in millisecondi e in ore. Per 10:00-12:00 e 11:00-13:00 UTC la sovrapposizione va dalle 11:00 alle 12:00, un'ora esatta.

I casi limite che confondono

Due intervalli che si toccano soltanto, come uno che finisce alle 12:00 e un altro che inizia alle 12:00, non condividono tempo, perché la fine è considerata esclusa; il risultato è vuoto ed entrambe le durate valgono zero. Lo strumento non restituisce mai l'unione dei due intervalli, solo la loro parte comune. Ogni valore è un orario completo nel formato ISO 8601 e il risultato è espresso in UTC. Un intervallo che termina prima di iniziare, o un valore mancante o non valido, viene rifiutato invece di diventare una sovrapposizione vuota.

Ingressi, uscite e casi limite

Intervalli adiacenti che si toccano solo in un punto producono un risultato vuoto perché il confronto è strettamente minore, in linea con agende che trattano la fine come esclusiva. Le finestre sovrapposte restituiscono solo il tratto condiviso, mai l'unione. Tipi errati, campi assenti e intervalli invertiti falliscono presto così i clienti non vedono sovrapposizioni nulle silenziose.

Sovrapposizione riunioni

Trovate la finestra condivisa tra due prenotazioni con durate stabili.

Dashboard di supporto

Evidenziate quando coincidono due finestre di incidente senza foglio di calcolo.

Automazione

Chiamate la stessa funzione pura da script che fondono calendari.

È gratis?

Sì. Tier A gira interamente nel browser senza account.

Chiama la rete?

No. Il motore parse tiene tutto sul dispositivo.

I risultati sono stabili?

Sì. Matematica deterministica ed esempi dorati fissano il contratto.

Come si calcola la sovrapposizione di due intervalli?

La parte comune inizia dal più tardivo dei due inizi e finisce al più anticipato dei due termini. Se quell'inizio viene prima di quel termine, gli intervalli condividono del tempo; altrimenti il risultato è vuoto e la durata è zero.

Cosa succede se un intervallo finisce proprio quando inizia l'altro?

Il risultato è vuoto. La fine di ogni intervallo è considerata esclusa, come nella maggior parte dei sistemi di prenotazione, quindi due intervalli che si toccano in un solo istante non condividono tempo.

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.

POSThttps://api.kit.forhosting.com/date/interval-intersection

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/date/interval-intersection \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"a_start":"2020-01-01T10:00:00.000Z","a_end":"2020-01-01T12:00:00.000Z","b_start":"2020-01-01T11:00:00.000Z","b_end":"2020-01-01T13:00:00.000Z"}'
{
  "a_start": "2020-01-01T10:00:00.000Z",
  "a_end": "2020-01-01T12:00:00.000Z",
  "b_start": "2020-01-01T11:00:00.000Z",
  "b_end": "2020-01-01T13:00:00.000Z"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.interval_intersection",
  "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.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Come funziona l'intersezione di intervalli

L'inizio dell'intersezione è il massimo dei due inizi e la fine è il minimo delle due fini. Due intervalli civili A e B sono definiti da quattro timestamp ISO-8601: a_start, a_end, b_start e b_end. Il motore analizza ogni estremo con il parser Date dell'ambiente, rifiuta valori non stringa o non analizzabili con messaggi invalid_input chiari che nominano il campo, ed esige che a_start sia strettamente minore di a_end e b_start strettamente minore di b_end. Quando l'inizio è strettamente minore della fine il risultato non è vuoto e porta start e end come stringhe ISO UTC più duration_ms e duration_hours arrotondate a un decimale stabile; altrimenti empty è vero, start e end sono null e entrambi i campi di durata valgono zero.

Ingressi, uscite e casi limite

I quattro campi sono stringhe obbligatorie così la sonda dello schema può costruire un campione completo dagli esempi pubblicati. Gli esempi dorati coprono una sovrapposizione di un'ora, una coppia disgiunta vuota, un intervallo A invertito e un payload completamente assente per associazioni di interfaccia oneste.

Determinismo, limiti e integrazione

L'implementazione è logica pura di motore parse senza rete, orologio o casualità oltre ai timestamp forniti, così ingressi identici producono sempre uscite identiche. Timestamp estremamente lontani restano soggetti alla precisione millisecondo IEEE del tipo Date della piattaforma; documentate quel contratto quando archiviate i risultati. Esaminate lo schema pubblicato prima di collegare metriche e associate solo le chiavi di successo documentate empty, start, end, duration_ms e duration_hours.

E se l'input non è valido?

Ricevete invalid_input con un messaggio chiaro in inglese.

Chi è l'autore?

Aspire nell'atelier KIT di ForHosting.

Leggi la documentazione completa del KIT →