datetime - 不同时区的 Moment js 差异

标签 datetime timezone momentjs timezone-offset

我想使用 moment.js 库计算 2 个不同时区之间的时差(以小时为单位)。

我尝试使用库提供的 diff 函数,但它没有提供正确的答案,我尝试过:

moment('2016-12-18 6:00:00', 'YYYY-MM-DD HH:mm:ss')
    .diff(moment('2016-12-18 6:00:00', 'YYYY-MM-DD HH:mm:ss').utcOffset('+09:30'), 'hours')

我位于 UTC+5:30 中,moment(string, string) 构造函数返回我当前时区的时间。我原以为答案是 4,结果却得到了 0。 moment 库是否提供了其他函数来获取时区之间的差异?

最佳答案

只要您仅使用固定时区偏移量,只要进行一项调整,上面的代码就会起作用:

.utcOffset('+09:30', true)

第二个参数告诉函数保留设置偏移量时已有的日期和时间值。默认值 (false) 会将日​​期和时间从当前偏移量(您的本地时间)移动到提供的偏移量。

如果您不使用固定偏移量,那么您确实需要使用时刻时区插件。

关于datetime - 不同时区的 Moment js 差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41185936/

相关文章:

SQL不允许将日期列转换为日期时间?

c# - 将 DateTime 格式化为带有时区的本地字符串

ruby-on-rails - 无法设置 Heroku 时区

javascript - 如何将 UTC + 偏移日期转换为本地?

python - 获取时间段的值

python - pandas to sql 将 datetime64 索引转换为时区感知

python - Pandas :选择具有特定月份和日期的所有日期

Java Simpledateformat Parse - 返回错误的日期时区问题?

javascript - FullCalendar 月 View 显示不正确的时间

javascript - 使用 moment.js 尝试在 native IOS 日历中创建事件