我有一个带有一些时间戳的日志文件
2020-12-03 08:30:00
2020-12-03 08:40:00
...
我从日志提供者的文档中知道时间戳是用 UTC 编写的(尽管没有使用 ISO 格式)
现在我想 用 date-fns 解析它们:
const toParse = "2020-12-03 08:40:00"
parse(toParse, 'yyyy-MM-dd HH:mm:ss', new Date()).toISOString()
因为我的计算机的语言环境是 UTC+1,所以我看到的是:
> "2020-12-03T07:40:00Z"
预期的:
> "2020-12-03T08:40:00Z".
这是我目前用来告诉 date-fns 解析为 UTC 的技巧:
const toParse = "2020-12-03 08:40:00"
parse(toParse + '+00', 'yyyy-MM-dd HH:mm:ss' + 'X', new Date()).toISOString()
正如预期的那样,
> "2020-12-03T08:40:00Z".
使用 date-fns 是否有任何正确的方法来执行此操作?寻找相当于时刻的 moment.utc()
原文由 Yann Pellegrini 发布,翻译遵循 CC BY-SA 4.0 许可协议
我不知道“正确”,但您可以使用 zonedTimeToUtc 将时间戳视为具有您喜欢的任何偏移量或时区,包括 UTC,例如
您可以在 npm.runkit.com/date-fns 对其进行测试。