Parsing delle date in JavaScript

Il parsing delle date in JavaScript è l'operazione di trasformare una stringa in un oggetto Date. Questa operazione è fondamentale in molte applicazioni, ad esempio quando si ricevono dati da un'API o da un modulo HTML.

Creazione di un Oggetto Date

Il costruttore Date può essere utilizzato in diversi modi. Uno dei più comuni è passargli una stringa:

const data = new Date("2025-07-23T10:30:00Z");
console.log(data.toISOString());

Il formato ISO 8601 (YYYY-MM-DDTHH:mm:ssZ) è il più sicuro e coerente per il parsing automatico.

Parsing con Date.parse()

È anche possibile usare Date.parse(), che restituisce il timestamp (in millisecondi) corrispondente alla data:

const timestamp = Date.parse("2025-07-23T10:30:00Z");
console.log(new Date(timestamp));

Anche qui è raccomandato l’uso del formato ISO.

Supporto per Formati Localizzati

JavaScript nativo non gestisce bene i formati di data localizzati (come 23/07/2025 o 07-23-2025). Questi possono produrre risultati inconsistenti o Invalid Date:

const data = new Date("23/07/2025"); // Potenzialmente non valido
console.log(data.toString());

Per questi casi si consiglia di usare una libreria specializzata.

Parsing Avanzato con Librerie

Librerie come date-fns, Luxon e Day.js offrono parsing robusto e supporto per molteplici formati:

// Con Day.js
dayjs("23/07/2025", "DD/MM/YYYY").toDate();

// Con Luxon
luxon.DateTime.fromFormat("23/07/2025", "dd/MM/yyyy").toJSDate();

Best Practice

  • Usa sempre il formato ISO 8601 quando possibile.
  • Evita parsing impliciti di stringhe localizzate.
  • Verifica sempre la validità dell’oggetto Date dopo il parsing.
  • Per parsing complesso, usa librerie affidabili.

Conclusione

Il parsing delle date in JavaScript può essere semplice se si seguono le convenzioni corrette. Tuttavia, per applicazioni internazionali o requisiti complessi, l’uso di librerie esterne è spesso la scelta migliore.

Torna su