我有一个使用 highcharts-ng 制作折线图的角度应用程序。y 轴是数字,x 轴是日期时间。
在使用 moment.js 在“America/New_York”和“Europe/London”两个时区之间转换时,我正在尝试正确考虑夏令时的变化。
伦敦目前处于英国夏令时(截至发帖时),因此是 +1:00。
tick.TimeStamp
> "2015-04-21T16:06:06.0786392-04:00"
tick.TimeStamp是我的“America/New_York”时间(目前在 EDT)。我使用...将其转换为伦敦时间
moment(tick.TimeStamp).tz("Europe/London").format()
> "2015-04-21T21:06:06+01:00"
我需要我在 Unix Epoch 刻度中的结果来绘制它们在 highcharts-ng 中的 x 轴,所以我使用...
var d = moment(tick.TimeStamp).tz("Europe/London").format()
moment(d).valueOf()
产生
1429646766000
问题是这个刻度值结果作为日期时间是
格林威治标准时间 2015 年 4 月 21 日星期二 20:06:06
它应该在哪里
格林威治标准时间 2015 年 4 月 21 日星期二 21:06:06
因为伦敦目前在 BST +1:00
我是在做错什么,还是只是时刻计算不正确?
任何帮助将不胜感激。谢谢!
编辑:我应该提到我的 moment-timezones.js 是他们网站上最新的,包含所有时区信息。