时区转换

时间:2015-02-24 17:24:53

标签: javascript date timezone momentjs

我的开始和结束日期如下,

开始日期:“2015-02-19T00:00:00-08:00”

结束日期:“2015-02-19T17:00:00-08:00”

如你所见,日期格式是在PST,所以PST时区的日期很好,我使用的片段如下,

moment(StartDate).format("MMM Do");

但是当我在IST [印度标准时间]中查看同一页面时,它显示如下,

开始日期:“2月19日” 结束日期:“2月20日”

请帮帮我,让我知道有什么我想念的。提前谢谢。

2 个答案:

答案 0 :(得分:2)

这些是您的原始值:

Start Date: "2015-02-19T00:00:00-08:00"
End Date:   "2015-02-19T17:00:00-08:00"

这些是UTC中的等效值:

Start Date: "2015-02-19T08:00:00+00:00"
End Date:   "2015-02-20T01:00:00+00:00"

这些是印度标准时间的等价值:

Start Date: "2015-02-19T13:30:00+05:30"
End Date:   "2015-02-20T06:30:00+05:30"

调整时区时间时,这是正常和预期的行为。地球上的两个不同位置不一定始终遵循相同的日历日期。

有关时区的更多信息,我建议使用以下资源:

关于moment.js,如果您只是想要保留原始值(无论用户的时区如何),请使用parseZone函数。

moment.parseZone(StartDate).format("MMM Do");

答案 1 :(得分:1)

你可以毫无问题地使用moment timezone

moment(StartDate).tz('America/Denver').format("MMM Do");

或PST-Zone中的任何其他城市......