gpt4 book ai didi

javascript - 如何使用Moment js将UTC时间转换为正常时间格式

转载 作者:行者123 更新时间:2023-12-02 16:58:59 28 4
gpt4 key购买 nike

我正在尝试将 UTC 时间格式转换为本地时间格式:

示例如下:

我从服务器端获取了UTC格式的时间,如下所示:2014-09-17T11:09:58+1100。我的要求是将其转换为 2014 年 9 月 17 日。

但是,我尝试了以下所有方法,但仍然得到 03 Sep 2014。为什么会发生这种情况?

我尝试过的:

function dateFormatter(UTC) {
var dateFormat = 'd MMM YYYY';

console.log(moment(UTC).zone('+1100').format(dateFormat));
return moment(UTC).format(dateFormat).toLocaleString();
}

这两种方法仍然得到相同的结果:2014 年 9 月 3 日

最佳答案

一些事情:

  • UTC 指 Coordinated Universal Time ,这是一种计时系统,而不是一种格式。

  • “UTC 格式”的值的偏移量为零。由于您说该值的偏移量为 +1100,因此将其称为“UTC”没有任何意义。

  • 您不应调用 zone 函数。即用于将输入值转换为特定时区偏移量。由于您的输入值已经包含偏移量,因此调用它没有什么意义。

  • 如果您只是想保留给定的偏移量,请使用 moment.parseZone相反。

  • format string characters区分大小写。小写的 d 表示星期几,为 0 到 6 之间的数字。您应该使用大写的 D 来指定月份中的某一天。

  • toLocaleString 不是必需的。请注意,您是从字符串而不是日期或时刻调用该函数。

把它们放在一起:

function dateFormatter(s) {
return moment.parseZone(s).format('D MMM YYYY');
}

关于javascript - 如何使用Moment js将UTC时间转换为正常时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25924277/

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