简体   繁体   English

Moment js - 格式化日期时间字符串而不考虑时区值

[英]Moment js - format datetime string without considering time zone value

Consider that the string is '2022-02-27T16:45:00-0500'考虑字符串是'2022-02-27T16:45:00-0500'

I need to display it as February 27, 2022, 04:45pm我需要显示为February 27, 2022, 04:45pm

I tried the following code我尝试了以下代码

moment(dateString).format('MMMM D, YYYY, hh:mma')

But it is returning the value as 'February 28, 2022, 03:15am' .但它返回的值为'February 28, 2022, 03:15am' Any idea on how to fix this?关于如何解决这个问题的任何想法?

Edit:编辑:

I have the following code我有以下代码

moment(dateString).utcOffset(0, true).format('MMMM D, YYYY, hh:mma')

This returns the output as 'February 28, 2022, 03:15am'这会将 output 返回为'February 28, 2022, 03:15am'

You will need to set utcOffset to -300 which is in minutes for -5 hrs moment().utcOffset(dateString)._offset will give you the offset in minutes您需要将utcOffset设置为 -300,即 -5 小时的分钟数moment().utcOffset(dateString)._offset将以分钟为单位为您提供偏移量

 let dateString = '2022-02-27T16:45:00-0500' let ans = moment(dateString).utcOffset(moment().utcOffset(dateString)._offset).format('MMMM D, YYYY, hh:mma') console.log(ans)
 <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM