【发布时间】:2020-04-07 12:29:00
【问题描述】:
我得到日期
Fri Dec 20 2019 00:00:00 GMT+0600 (East Kazakhstan Time)
但是当我转换为 ISOString 时,我得到了
2019-12-19T18:00:00.000Z
我猜这个转换不考虑时区..
我也尝试使用时刻时区和相同的结果进行转换。
moment("Fri Dec 20 2019 00:00:00 GMT+0600 (East Kazakhstan Time)").tz('Asia/Bishkek').toISOString()
如果我得到 date with timezone 我应该 convert with timezone:
我 应该得到
2019-12-20T00:00:00.000Z
不是
2019-12-19T18:00:00.000Z
如果我错了,请纠正我
更新
我找到了解决我的问题的解决方案
moment(this.data.start.getTime() - this.data.start.getTimezoneOffset()*60*1000).toISOString()
从 GMT +0 转换为 GMT +6 时区
现在新问题:
如何使用momentjs使上面的代码更简单..或者这样就足够了?
【问题讨论】:
-
这会将日期更改为比应有的时间晚 6 小时,即您从根本上更改了日期所代表的时间。
标签: javascript typescript date momentjs toisostring