Area di prova date-fns
Testa e sperimenta le funzioni della libreria date-fns in un'area di prova JavaScript in tempo reale con output immediato
Input
Output
Leggimi
Che cos'è date-fns?
date-fns è una moderna libreria JavaScript per la gestione delle date che fornisce strumenti completi, coerenti e affidabili per lavorare con le date in JavaScript. A differenza dell'oggetto nativo JavaScript Date, che presenta molte stranezze e incoerenze, date-fns offre un approccio modulare e funzionale alla manipolazione delle date. È tree‑shakeable, il che significa che includi solo le funzioni effettivamente utilizzate, mantenendo la dimensione del bundle minima. La libreria supporta oltre 200 funzioni che coprono tutto, dalla formattazione e parsing al confronto, alla manipolazione e localizzazione delle date.
Perché utilizzare un playground date-fns?
Lavorare con le date in JavaScript può essere complicato: fusi orari, pattern di formattazione e aritmetica delle date portano spesso a risultati inattesi. Un ambiente playground consente di sperimentare le funzioni di date-fns in tempo reale, vedere l'output immediato e apprendere l'API senza configurare un progetto completo. È perfetto per testare le stringhe di formattazione, fare debug dei calcoli di data o prototipare rapidamente la logica delle date prima di integrarla nella propria applicazione.
Descrizione dello strumento
Il date-fns Playground è un ambiente di codifica interattivo che consente di scrivere ed eseguire codice JavaScript con l'intera libreria date-fns pre‑caricata. L'intera libreria date-fns è disponibile tramite l'oggetto dateFns, offrendo l'accesso a tutte le oltre 200 funzioni. Il codice viene eseguito automaticamente mentre si digita (con debounce) e tutti gli output di console.log, console.warn e console.error appaiono nel terminale integrato sotto l'editor. Ciò lo rende ideale per apprendere date-fns, testare operazioni sulle date e sperimentare diverse opzioni di formattazione.
Esempi
Formatta la data corrente:
const now = new Date();
console.log(dateFns.format(now, "MMMM do, yyyy"));
// Output: December 30th, 2025Calcola i giorni tra due date:
const start = new Date(2025, 0, 1);
const end = new Date(2025, 11, 31);
console.log(dateFns.differenceInDays(end, start) + " days");
// Output: 364 daysAggiungi tempo a una data:
const today = new Date();
const nextWeek = dateFns.addWeeks(today, 1);
const nextMonth = dateFns.addMonths(today, 1);
console.log("Next week:", dateFns.format(nextWeek, "yyyy-MM-dd"));
console.log("Next month:", dateFns.format(nextMonth, "yyyy-MM-dd"));Verifica se una data è nel passato o nel futuro:
const date = new Date(2024, 5, 15);
console.log("Is past?", dateFns.isPast(date));
console.log("Is future?", dateFns.isFuture(date));Analizza una stringa di data:
const parsed = dateFns.parse("25/12/2025", "dd/MM/yyyy", new Date());
console.log(dateFns.format(parsed, "EEEE, MMMM do, yyyy"));
// Output: Thursday, December 25th, 2025Caratteristiche
- Libreria date-fns completa: Accesso a tutte le oltre 200 funzioni date-fns tramite l'oggetto
dateFns - Esecuzione del codice in tempo reale: Il codice viene eseguito automaticamente mentre si digita con debounce intelligente
- Terminale integrato: Visualizza l'output della console istantaneamente senza gli strumenti di sviluppo del browser
- Evidenziazione della sintassi: Evidenziazione della sintassi JavaScript per una migliore leggibilità del codice
- Gestione degli errori: Gli errori di runtime vengono visualizzati chiaramente nell'output del terminale
Casi d'uso
- Apprendere date-fns: Sperimenta con diverse funzioni e vedi i risultati immediatamente senza configurare un progetto
- Test di formati data: Prova diverse stringhe di formattazione per trovare il pattern di output esatto di cui hai bisogno
- Prototipazione di calcoli data: Testa aritmetica complessa delle date, come aggiungere giorni lavorativi, trovare intervalli o confrontare date
- Debug della logica delle date: Isola e testa snippet di codice relativi alle date nei tuoi progetti
- Conversioni rapide di date: Converti tra formati di data o calcola differenze temporali al volo
Funzioni comuni di date-fns
| Funzione | Descrizione | Esempio |
|---|---|---|
format |
Formatta una data in una stringa | dateFns.format(date, "yyyy-MM-dd") |
parse |
Analizza una stringa in una data | dateFns.parse("2025-01-01", "yyyy-MM-dd", new Date()) |
addDays |
Aggiunge giorni a una data | dateFns.addDays(date, 7) |
subMonths |
Sottrae mesi da una data | dateFns.subMonths(date, 3) |
differenceInDays |
Ottiene i giorni tra due date | dateFns.differenceInDays(dateA, dateB) |
isAfter |
Verifica se una data è successiva a un'altra | dateFns.isAfter(dateA, dateB) |
isBefore |
Verifica se una data è precedente a un'altra | dateFns.isBefore(dateA, dateB) |
startOfMonth |
Ottiene il primo giorno del mese | dateFns.startOfMonth(date) |
endOfYear |
Ottiene l'ultimo istante dell'anno | dateFns.endOfYear(date) |
formatDistance |
Differenza di tempo leggibile dall'uomo | dateFns.formatDistance(dateA, dateB) |
Riferimento ai token di formattazione
| Token | Descrizione | Esempio |
|---|---|---|
yyyy |
Anno a 4 cifre | 2025 |
MM |
Mese a 2 cifre | 01-12 |
MMMM |
Nome completo del mese | January |
dd |
Giorno a 2 cifre | 01-31 |
do |
Giorno con ordinale | 1st, 2nd, 3rd |
EEEE |
Nome completo del giorno della settimana | Monday |
EEE |
Giorno della settimana abbreviato | Mon |
HH |
Ora in formato 24h | 00-23 |
hh |
Ora in formato 12h | 01-12 |
mm |
Minuti | 00-59 |
ss |
Secondi | 00-59 |
a |
AM/PM | AM, PM |