2
我一直在使用momentjs和moment-timezone一段时间。在今天使用isAfter
方法使用日期比较时,我发现了奇怪的行为。momentjs与时区的日期比较
假设一个时间日期配置了时区值,其他不是那么应该是日期比较的行为?
就我而言,我们将纪元时间转换为一个日期的特定时区值。其他日期格式为yyyy-mm-dd,没有任何时区值。当我比较这两天时,它的当天价值是失败的。
//Wed Sep 27 2017 01:13:04 GMT-0700
var localtime = moment(1506499984924).tz("America/Los_Angeles");
//Wed Sep 27 2017 00:00:00
var date = moment('2017-09-27');
//returns true
var value = localtime.isAfter(date, 'day');
理想情况下,既然这两个日期是2017年9月27日,它应该返回false。 使用diff
方法代替isAfter
返回0,这是正确的。
任何帮助表示赞赏解决这个问题。
我已经创建了这个代码笔:Moment
好吧。因此,如果我在创建日期时刻之前初始化默认时区'moment.tz.setDefault(“America/Los_Angeles”);'我会得到'false'输出。这是解决这个问题的正确方法吗? – jarvis
嗯,我不完全确定你要完成什么,所以我不能说这是否能解决问题。 –