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, YYYYnon 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, YYYYper ottenere "15 February, 2018"?