首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在UTC中解析日期时间?

如何在UTC中解析日期时间?
EN

Stack Overflow用户
提问于 2014-10-13 23:53:26
回答 2查看 12.6K关注 0票数 9

我有一个像"10/14/2014 5:30:00 AM"这样的字符串。我需要将其解析为UTC字符串。但是当我执行moment.utc("10/14/2014 5:30:00 AM").format()时,我得到了"2014-10-13T22:30:00+00:00",而我希望得到的是"2014-10-14T12:30:00+00:00"

如何才能让momentJS相信我的字符串是UTC字符串,并在不根据本地时区(在我的例子中是+7)移动时间的情况下解析它?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-14 17:21:11

这确实是一个bug,而且是I filed it here。每当您允许moment回退到浏览器的解析器时,问题就会发生。如果在运行此代码时查看浏览器的调试控制台,您将看到以下警告:

弃用警告: moment构造回落到js Date。这是不鼓励的,并将在即将到来的主要版本中删除。有关更多信息,请参阅https://github.com/moment/moment/issues/1407

该警告是正常的,它告诉您不要以返回到JavaScript Date对象的解析器的方式使用moment。您可以通过提供格式字符串来避免这种情况。

通常,以m/d/y格式传递值而不使用格式字符串不是一个好主意,因为并非所有用户都会在其浏览器中具有该格式设置。像1/4/2014这样的值可以解释为1月4日或4月1日。

为了显式地告诉moment以特定格式进行解析,pass the format string如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
moment.utc("10/14/2014 5:30:00 AM", "M/D/YYYY h:mm:ss a")
票数 11
EN

Stack Overflow用户

发布于 2014-10-14 00:15:53

我发现完全相同的行为,这对我来说似乎是一个bug,因为utc()不应该推断一个不存在的时区。

解决方案是在调用utc()之前重新格式化日期。我发现数组语法和ISO 8601格式工作得很好:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// Array format - Works
moment.utc([2014, 10, 14, 10, 05]).format()

// Nope
moment.utc("10/14/2014 5:30:00 AM").format();

// ISO 8601 - Works
moment.utc("2014-10-14 05:30:00").format();

JSFiddle:http://jsfiddle.net/0qw54nrb/

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26350652

复制
相关文章
Java 解析 带 T Z 的 UTC 时间格式 日期
直接上代码吧 public static void main(String[] args) throws ParseException { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"); df.setTimeZone(TimeZone.getTimeZone("UTC")); Date parse = df.parse("2023-01-20T06:50:5
彼岸舞
2023/01/13
2.7K0
Docker 中修改本地时间UTC
今天做在docker中发布了一个服务,需要用到计划任务,但是发现docker环境中本地时间为UTC,导致本地时间跟正常时间差了8个小时,以下放出如何修改Docker中的本地时间
BigYoung小站
2020/05/04
2.5K0
如何在Python中处理日期和时间相关问题
在许多应用程序中,我们需要处理日期和时间相关的问题。无论是计算时长、格式化日期、还是进行日期运算,Python提供了丰富的库和模块来满足我们的需求。下面,我将为您介绍一些实用的技巧和操作,帮助您更好地处理日期和时间相关的问题。
用户614136809
2023/09/26
2460
SpringMVC 日期/时间 参数解析
Spring mvc 默认设置对日期和时间参数转换不是很理想,自带的CustomDateEditor 只能传入一个DateFormat,而我们知道SimpleDateFormat 又是线程不安全的,我们可以通过自定义一个PropertyEditorSupport的子类,用其他方式来实现日期格式的转换。少比比,直接上代码:
前Thoughtworks-杨焱
2021/12/07
8930
JAVA获取UTC时间
import org.joda.time.format.DateTimeFormatter; import org.joda.time.DateTime; private static final String UTC_FORMATTER_PATTERN = "yyyy-MM-dd'T'HH:mm:ss'Z'"; // 获取UTC时间 DateTimeFormatter fmt = DateTimeFormat.forPattern(UTC_FORMATTER_PATTERN); DateTime no
高大北
2022/06/14
2.8K0
Python的UTC时间转换
时间戳(timestamp) 转换-> UTC显示时间(datetime),使用time.gmtime(timestamp)。
py3study
2020/01/07
4.8K0
如何在PowerBI中同时使用日期表和时间表
首先,由于日期表和时间表不能叠加在一起(原因在前文说过了),所以肯定是两张表单独和事实表进行关联,而事实表中日期和时间是在同一列。
陈学谦
2020/07/01
8.8K0
如何在PowerBI中同时使用日期表和时间表
Python utc转化时间
最近在开发项目的时候, 遇到了时区, 本地时间和UTC糅杂的情况, 研究之后做一些分享.
py3study
2020/01/08
2.2K0
gmt时间和cst时间_时区utc是什么意思
全球24个时区的划分 相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究竟这24个时区是如何产生的?过去世界各地原本各自订定当地时间,但随着交通和电讯的发达,各地交流日益频繁,不同的地方时间,造成许多困扰,于是在西元1884年的国际会议上制定了全球性的标准时,明定以英国伦敦格林威治这个地方为零度经线的起点(亦称为本初子午线),并以地球由西向东每24小时自转一周360°,订定每隔经度15°,时差1小时。而每15°的经线则称为该时区的中央经线,将全球划分为24个时区,其中包含23个整时区及180°经线左右两侧的2个半时区。就全球的时间来看,东经的时间比西经要早,也就是如果格林威治时间是中午12时,则中央经线15°E的时区为下午1时,中央经线30°E时区的时间为下午2时;反之,中央经线15°W的时区时间为上午11时,中央经线30°W时区的时间为上午10时。以台湾为例,台湾位于东经121°,换算后与格林威治就有8小时的时差。如果两人同时从格林威治的0°各往东、西方前进,当他们在经线180°时,就会相差24小时,所以经线180°被定为国际换日线,由西向东通过此线时日期要减去一日,反之,若由东向西则要增加一日。
全栈程序员站长
2022/09/20
2.6K0
python中时间、日期、时间戳的转换
1.简介 在编写代码时,往往涉及时间、日期、时间戳的相互转换。 2.示例 # 引入模块 import time, datetime 2.1 str类型的日期转换为时间戳 1 # 字符类型的时间 2 tss1 = '2013-10-10 23:40:00' 3 # 转为时间数组 4 timeArray = time.strptime(tss1, "%Y-%m-%d %H:%M:%S") 5 print timeArray 6 # timeArray可以调用tm_year等 7 prin
kirin
2020/05/16
3.8K0
时间标准:GMT,UTC 以及DST
GMT是指格林尼治标准时间,它对应位于英国伦敦郊区的皇家格林威治天文台的标准时间。
前端GoGoGo
2018/08/24
2.6K0
python UTC 与 本地时间互转
最近在操作 MongoDB 时候出现了时区转换的问题,导致 Python 的时间对象存到 MongoDB 转成了 UTC 时间的格式,但是使用 Golang 查询时候与本地时间相差了 8 小时,所以这里写出了 Python 的本地时间与 UTC 时间的转换,Golang 的 MongoDB 驱动会自动做这种转换工作,请见我另一篇文章:http://blog.csdn.net/u010649766/article/details/79385948
py3study
2020/01/10
3.6K0
sql中时间戳转日期
需求: 我将博客和 typecho 后台结合起来,打算做一个在线说说的功能,在 typecho 中输入内容,然后调用接口,实现在我的博客查看说说功能的功能。是不是有点绕?我也这么觉得,但是折腾一下也挺好的。
子舒
2022/06/09
4.3K0
sql中时间戳转日期
MySQL 中的日期时间类型
各类型都有具体的取值范围,超出或非法的其他值时,MySQL 会回退到 0。TIMESTAMP 类型是个例外,给它设置一个超出范围的值时,将保存上该类型允许的最大值。
星哥玩云
2022/08/18
6.8K0
java利用时间戳来获取UTC时间
由于项目原因,本人在做测试的时候发时间都是UTC时间,因此找了找解决方案,发现都是非常复杂,十几行代码实现此功能,其中主要都用在计算时间偏移量。我试了一下在calendar的getinstance方法参数修改并不能直接获取UTC时间,在尝试过之后终于找到一个简单的方法,通知data类直接获取时间戳,然后设置时间戳来达到转换时区的方法。分享代码,供大家参考。
FunTester
2020/04/03
2.8K0
ThinkPHP中自动填充日期时间
如果是用自己的函数那就要用callback,第二个参数默认当前模块能调用的方法;用function的话第二个参数为函数名,而这个函数可以是PHP自带的,也可以是你自己写的
PM吃瓜
2019/08/13
1.4K0
dotnet OpenXML 解析 PPT 图表 解析日期时间表示内容
在 OpenXML 里的图表存放的日期时间很多存放的是数值,需要进行转换才能获取到用户可见的字符串
林德熙
2023/04/07
6340
dotnet OpenXML 解析 PPT 图表 解析日期时间表示内容
有关机器时间、UTC时间、本地时间的总结
1. 时间的表达方式有两种,一种是 human time,比如我们所说的年月日等,一种是 machine time,比如我们用 System.currentTimeMillis() 方法获得的毫秒数。
KINGYT
2019/09/25
2.5K0
java实现时间转UTC格式
协调世界时,又称世界标准时间或世界协调时间,简称UTC(从英文“Coordinated Universal Time”/法文“Temps
用户7741497
2022/03/27
4.5K0
JAVA实现UTC时间转换成北京时间
之前有一篇关于将UTC时间转换成北京时间的python文章(传送门),这次需要用到java版的,本以为这种小工具网上会很多,但是在网上搜了一圈之后发现都不尽人意。
我是李超人
2020/08/21
8.8K0

相似问题

将日期时间解析到UTC

22

不可解析的UTC日期时间

10

c#解析UTC日期时间

40

用日期函数UTC库解析UTC/GMT时间

30

如何用Java解析UTC日期/时间

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文