Я використовую Moment.js для розбору та форматування дат у своєму веб-додатку. Як частина об'єкта JSON, мій сервер резервного сервера надсилає дати у кількості мілісекунд від епохи UTC (зміщення Unix).
Дати розбору в конкретному часовому поясі прості - просто додайте ідентифікатор часового поясу RFC 822 до кінця рядка перед розбором:
// 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>
Але як я відформатую дату у визначеному часовому поясі ?
Я хочу відповідати результатам незалежно від поточного часу браузера, але я не хочу відображати дати в UTC.
DD MMM, YYYY
не працює, коли я ним користуюся moment.tz("2018-02-15T14:20:00.000+0530", "Asia/Bangkok").format("DD MMM, YYYY")
. Чи може хтось вказати мені в документації, де я можу знайти всі ключі для форматування часу при використанні цього api.
"15 Feb, 2018"
. Ви мали на увазі використовувати рядок формату DD MMMM, YYYY
для отримання "15 February, 2018"
?