Sto usando Moment.js per analizzare e formattare le date nella mia app Web. Come parte di un oggetto JSON, il mio server back-end invia le date in numero di millisecondi dall'epoca UTC (offset Unix).
L'analisi delle date in un fuso orario specifico è semplice: basta aggiungere l'identificatore del fuso orario RFC 822 alla fine della stringa prima di analizzare:
// response varies according to your timezone
const m1 = moment('3/11/2012 13:00').utc().format("MM/DD HH:mm")
// problem solved, always "03/11 17:00"
const m2 = moment('3/11/2012 13:00 -0400').utc().format("MM/DD HH:mm")
console.log({ m1, m2 })
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
Ma come posso formattare una data in un fuso orario specifico ?
Voglio risultati coerenti indipendentemente dall'ora corrente del browser, ma non voglio visualizzare le date in UTC.
DD MMM, YYYY
non funziona, quando lo uso come mi piace moment.tz("2018-02-15T14:20:00.000+0530", "Asia/Bangkok").format("DD MMM, YYYY")
. Qualcuno può indicarmi la documentazione in cui posso trovare tutte le chiavi per il tempo di formattazione quando utilizzo questo API.
"15 Feb, 2018"
. Intendevi usare la stringa di formato DD MMMM, YYYY
per ottenere "15 February, 2018"
?