HOWTO · JavaScript

Formatta una data JavaScript

Questo tutorial introduce come formattare una data JavaScript.

Questo tutorial spiega come formattare una data JavaScript.

Possiamo ottenere la data e l’ora correnti utilizzando l’oggetto JavaScript Date. Possiamo formattare la data scrivendo le nostre funzioni personalizzate e utilizzando librerie come moment.js.

Per prima cosa, creiamo una variabile chiamata date usando l’oggetto Date per ottenere la data e l’ora correnti.

var date = new Date();

Mostreremo il risultato di tutte le funzioni di formattazione applicate a questa variabile.

Formattare un dato JavaScript usando toTimeString() in JavaScript

toTimeString() aiuta a estrarre solo la stringa contenente le informazioni sull’ora dalla variabile date.

var date = new Date();
result = date.toTimeString();
console.log(result);

Produzione:

"20:07:37 GMT+0100 (Central European Standard Time)"

Formattare un dato JavaScript usando toUTCString() in JavaScript

Questo metodo restituisce l’ora di Greenwich o l’ora universale coordinata dall’ora del paese corrente memorizzata nella variabile.

var date = new Date();
result = date.toUTCString();
console.log(result);

Produzione:

"Thu, 18 Mar 2021 19:09:40 GMT"

Formattare un dato JavaScript usando toDateString() in JavaScript

Questo metodo estrae la data e la restituisce sotto forma di stringa.

var date = new Date();
result = date.toDateString();
console.log(result);

Produzione:

"Thu Mar 18 2021"

Formattare un dato JavaScript usando toISOString() in JavaScript

Restituisce una stringa contenente la data / ora in formato ISO 8601.

var date = new Date();
result = date.toISOString();
console.log(result);

Produzione:

"2021-03-18T19:11:35.957Z"

Formattare un dato JavaScript utilizzando toLocaleString() in JavaScript

Converte l’oggetto data in una stringa utilizzando le impostazioni locali.

var date = new Date();
result = date.toLocaleString();
console.log(result);

Produzione:

"3/18/2021, 8:13:03 PM"

Formattare un dato JavaScript utilizzando toLocaleTimeString() in JavaScript

Converte l’oggetto data ma estrae solo l’ora in una stringa utilizzando le impostazioni locali.

var date = new Date();
result = date.toLocaleTimeString();
console.log(result);

Produzione:

"8:14:22 PM"

Utilizza le funzioni personalizzate per formattare la data in JavaScript

Formato data dd-mm-yyyy o dd/mm/yyyy e modelli simili

Usiamo i metodi getDate(), getMonth() e getFullYear() per ottenere le parti della data in pezzi e concatenarle usando il simbolo che vogliamo e nell’ordine che vogliamo.

Ad esempio, possiamo ottenere dd/mm/yyyy, dd-mm-yyyy, mm-dd-yyyy, mm/yyyy in qualsiasi modo desideriamo scrivendo una funzione personalizzata come abbiamo scritto di seguito.

var date = new Date();
const formatDate = (date) => {
  let formatted_date =
      date.getDate() + '-' + (date.getMonth() + 1) + '-' + date.getFullYear()
  return formatted_date;
} console.log(formatDate(date));

Produzione:

"18-3-2021"

Possiamo anche inserire il nome del mese come January, February, March, all’interno della stringa della data.

var date = new Date();
const months = [
  'JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV',
  'DEC'
];

const formatDate = (date) => {
  let formatted_date =
      date.getDate() + '-' + months[date.getMonth()] + '-' + date.getFullYear()
  return formatted_date;
} console.log(formatDate(date));

Produzione:

"18-MAR-2021"

Formato data yyyy-mm-dd hh:mm:ss e modelli simili

Usiamo tutti i metodi getDate(), getMonth() e getFullYear(), getHour(), getminutes(), getsecond() per ottenere le parti di data e ora individualmente e concatenarli usando il simbolo che vogliamo e nell’ordine che vogliamo.

var date = new Date();

const formatDate =
    (current_datetime) => {
      let formatted_date = current_datetime.getFullYear() + '-' +
          (current_datetime.getMonth() + 1) + '-' + current_datetime.getDate() +
          ' ' + current_datetime.getHours() + ':' +
          current_datetime.getMinutes() + ':' + current_datetime.getSeconds();
      return formatted_date;
    }

                          console.log(formatDate(date));

Produzione:

"2021-3-18 20:21:2"

Usa il pacchetto Moment.js con Node.js per formattare la data in JavaScript

È considerata la migliore libreria di data e ora in JavaScript. È semplice da usare e non è necessario memorizzare e costruire tutte queste diverse funzioni. Gli utenti possono facilmente scrivere un modello di stringa in base alle proprie esigenze di formattazione.

const moment = require('moment');
let m = moment();
m.format('[Time: ] h:mm:ss a');  // output of the form `Time: 11:39:03 pm`

Il codice sopra mostra uno dei modi in cui moment.js ci consente di formattare la data e l’ora utilizzando il nodo REPL.

Utilizza il pacchetto dateformat con Node.js

Un altro pacchetto come Moment.js può aiutarci a formattare la data. Funziona sia con Node.js che con JavaScript lato browser. Estende l’oggetto Date includendo un metodo .format().

Lato browser

Day = new Date();
Day.format('dd-m-yy');  // Returns '16-3-21'

Il codice sopra mostra la semplicità di usare il pacchetto dateformat con l’oggetto Date.

Node.js

const dateformat = require('dateformat');
let now = new Date();
dateformat(now, 'dddd, mmmm dS, yyyy, h:MM:ss TT');  // returns 'Tuesday, March
                                                     // 16th, 2021, 11:32:08 PM'

Il codice sopra mostra l’uso del pacchetto dateformat per formattare la data con il nodo REPL.