我正在使用Moment.js解析和格式化Web应用程序中的日期。作为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"
?