首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用moment 'offset‘日期/时间

如何使用moment 'offset‘日期/时间
EN

Stack Overflow用户
提问于 2017-02-25 08:21:56
回答 2查看 1.3K关注 0票数 0

我有一个带有日期的输入框(用户选择)。我想使用moment.js来偏移由时区选择的日期,例如‘欧洲/伦敦’。因此,假设我的日期是(2/24/2017),我如何获得时刻给我的日期为:

当前日期时间为2/24/2017 4:18:00

所以我希望它返回2/25/2017 12:18:00,这是英国伦敦的当前时间?

代码语言:javascript
运行
复制
var x = moment().tz(dateStart, 'London/Europe').format();

但现在它一直在告诉我日期和时间。

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2017-02-25 11:24:41

确保您还加载了时区数据,例如,将2010年至2020年的数据包含在内。

在解析字符串时,您应该包含要解析的格式,否则解析器只是猜测。

“伦敦/欧洲”不是有效的IANA timezone identifier,区域在前,城市在后,因此:

代码语言:javascript
运行
复制
console.log(moment('2/24/2017','MM/DD/YYYY').tz('Europe/London').format());
代码语言:javascript
运行
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.11/moment-timezone-with-data-2010-2020.js"></script>

请注意,当您仅解析日期时,时间部分将根据主机系统时区设置设置为一天开始时的本地午夜,即本地时间00:00:00。

票数 0
EN

Stack Overflow用户

发布于 2017-03-08 13:35:30

你基本上是在尝试获取特定时区的当前时间,但我认为没有必要传递日期,因为moment()构造函数将获取您所在位置的当前日期时间,而您尝试的时区字符串正确应该是-‘欧洲/伦敦’

代码语言:javascript
运行
复制
my current time in India now - 
moment().format('DD MM YYYY HH:MM:SS');
"08 03 2017 11:03:27"

for London time zone
moment().tz('Europe/London').format('DD MM YYYY HH:MM:SS');
"08 03 2017 05:03:34"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42450430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档