在下面的示例中,我将时间 ( t
) 从 ACT 转换为 PST。现在,对于这个特定的例子,我知道 t2
晚了 19 小时(如果我们认为 t1
是周一 14:00:00,那么 t2
就是周日 19:00:00)。
在我的用例中,并不总是从 ACT 到 PST。源( t1
)和目标( t2
)将是动态时区值。所以,转换后t2
可能是
- 晚一天(即如果
t1
是星期一,那么t2
是星期日) - 是同一天
(即如果
t1
和t2
是星期一) - 提前一天(即如果
t1
是星期一 然后t2
是星期二)
示例:
let t = "14:00:00";<br/>
let t1 = moment.tz("2001-01-01" + t, 'Australia/Sydney'); // 14:00 ACT
let t2 = moment.tz("2001-01-01" + t, 'Australia/Sydney').utc().tz('US/Pacific'); //19:00 PST (19 hrs behind to ACT)
有办法算出日期吗?
最佳答案
使用您的示例,您可以这样做:
const s1 = t1.format('YYYY-MM-DD');
const s2 = t2.format('YYYY-MM-DD');
然后
if (s1 > s2) {
// t2 is behind t1
} else if (s1 < s2) {
// t2 is ahead of t1
} else {
// same day
}
关于javascript - momentJS 知道时区转换后的前一天、当前或后一天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59159730/