Javascript moment.js被一天的发行量抵消

Javascript moment.js被一天的发行量抵消,javascript,datetime,momentjs,Javascript,Datetime,Momentjs,我的一些用户报告了不同的输出,以一天的时间抵消 代码: 问题: 2015-12-25 2015-12-26 2015-12-27 2015-12-28 2015-12-29 2015-12-30 2015-12-31 2016-01-01 2016-01-02 知道为什么吗?尝试转换到所需的时区。对于伦敦,时区应如下所示: date.clone().tz("Europe/London"); 尝试转换到所需的时区。对于伦敦,时区应如下所示: date.clone().tz("Europe/Lo

我的一些用户报告了不同的输出,以一天的时间抵消

代码:

问题:

2015-12-25
2015-12-26
2015-12-27
2015-12-28
2015-12-29
2015-12-30
2015-12-31
2016-01-01
2016-01-02

知道为什么吗?

尝试转换到所需的时区。对于伦敦,时区应如下所示:

date.clone().tz("Europe/London");

尝试转换到所需的时区。对于伦敦,时区应如下所示:

date.clone().tz("Europe/London");

很可能与时区偏移有关。如果您可以记录实际的毫秒计数,您很可能会看到这些值是相同的,您只是到达了基于时区的日期边界。这不是一个完全重复的值(它不使用矩.js),但问题是相同的:。另请参阅。这是一个针对特定时刻的问题/答案。基本上,您现在希望矩.utc()@MaggiePint正常。当我使用parseZone时,我得到的问题与我的用户看到的相同。但是…正确的日期没有parseZone:)您看到的是正确的日期,您假设的日期是错误的。
1451084400000
的时间值为2015-12-25T23:00:00.000Z,即格林尼治标准时间。将时区更改为向东1小时或以上,则日期会更改。很可能与时区偏移有关。如果您可以记录实际的毫秒计数,您很可能会看到这些值是相同的,您只是到达了基于时区的日期边界。这不是一个完全重复的值(它不使用矩.js),但问题是相同的:。另请参阅。这是一个针对特定时刻的问题/答案。基本上,您现在希望矩.utc()@MaggiePint正常。当我使用parseZone时,我得到的问题与我的用户看到的相同。但是…正确的日期没有parseZone:)您看到的是正确的日期,您假设的日期是错误的。
1451084400000
的时间值为2015-12-25T23:00:00.000Z,即格林尼治标准时间。将时区更改为向东1小时或以上,日期将更改。1。我希望这是通用的2。用户在tz+3/+2小时内,而不是一整天。有时,仅仅因为几个小时的差异,它就增加了一整天。别忘了定义时区,你将永远不会有问题。好吧,但是为每个日期添加tz,我有很多,会减慢脚本速度,所以基本上所有内容都应该是UTC。它可以简化编码,但会使比较普通人的相对时间变得更加困难。这取决于我们如何适应……1。我希望这是通用的2。用户在tz+3/+2小时内,而不是一整天。有时,仅仅因为几个小时的差异,它就增加了一整天。别忘了定义时区,你将永远不会有问题。好吧,但是为每个日期添加tz,我有很多,会减慢脚本速度,所以基本上所有内容都应该是UTC。它可以简化编码,但会使比较普通人的相对时间变得更加困难。这取决于我们如何适应。。。
date.clone().tz("Europe/London");