gpt4 book ai didi

javascript - Momentjs格式化力矩对象并保持偏移

转载 作者:数据小太阳 更新时间:2023-10-29 04:39:52 27 4
gpt4 key购买 nike

我有一个 momentjs 对象,它包含一个带有偏移量的日期时间。这一刻对象是从它的字符串表示创建的:

var x = moment("2017-02-08T04:11:52+6:00")

处理对象后,我想从 moment 对象获得相同的文本表示。

尝试格式化对象时得到以下结果:

  • x.format() => "2017-02-08T04:11:52+14:00"
  • moment.parseZone(x).format("YYYY-MM-DDTHH:mm:ssZ") => "2017-02-07T14:11:52+00:00 "

如何格式化我的 moment 对象,以便我再次拥有完全相同的表示?

最佳答案

一些事情:

  • 您的输入是非标准的,因为您已将偏移量指定为 +6:00。 ISO8601 格式要求在小时和分钟偏移量中使用两位数字。 (它应该是 +06:00。对于这个答案的其余部分,我假设这是一个错字。)

  • 创建时刻时您将丢失原始偏移量,因为您正在通过调用 moment(...) 调整到本地时区。因此,它不存在于 x 中,至少您无法检索它。

  • 一般来说,parseZone 应该传递一个字符串,而不是 Moment 对象。

  • 你当然可以按照你的要求格式化,只要你一开始就正确地解析了。您甚至不需要指定格式字符串,因为您要查找的是默认格式字符串。

    var str1 = "2017-02-08T04:11:52+06:00";
    var mom = moment.parseZone(str1);
    var str2 = mom.format(); // "2017-02-08T04:11:52+06:00"

关于javascript - Momentjs格式化力矩对象并保持偏移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41984722/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com