Formatta una data JavaScript

Harshit Jindal 12 ottobre 2023
  1. Formattare un dato JavaScript usando toTimeString() in JavaScript
  2. Formattare un dato JavaScript usando toUTCString() in JavaScript
  3. Formattare un dato JavaScript usando toDateString() in JavaScript
  4. Formattare un dato JavaScript utilizzando toLocaleString() in JavaScript
  5. Formattare un dato JavaScript utilizzando toLocaleTimeString() in JavaScript
  6. Utilizza le funzioni personalizzate per formattare la data in JavaScript
  7. Usa il pacchetto Moment.js con Node.js per formattare la data in JavaScript
  8. Utilizza il pacchetto dateformat con Node.js
Formatta 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.

Harshit Jindal avatar Harshit Jindal avatar

Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.

LinkedIn

Articolo correlato - JavaScript Date