【问题标题】:Convert date time from UTC to user time zone将日期时间从 UTC 转换为用户时区
【发布时间】:2019-06-27 07:35:14
【问题描述】:

我必须根据用户的时区显示日期和时间。我在插入数据库时​​保存了 UTC 日期时间。我试过下面的代码,但它只在 Chrome 中工作:

let dateTimeConverted = new Date(new Date(jsonObject.calculationDateTime) + '.000Z');

我可以使用以下代码获取当前用户的时区偏移:

var x = new Date();
var currentTimeZoneOffsetInHours = x.getTimezoneOffset();

我尝试了一些方法来转换为用户的时区并显示用户的时区的日期时间,但我没有成功,可能是我做错了什么。请帮我弄清楚这一点。

【问题讨论】:

  • jsonObject.calculationDateTime 中究竟是什么?它是一个字符串吗?如果是这样,请举一个例子。它是Date 对象吗?如果是这样,它最初是如何创建的?来自时间戳或字符串?请出示。另外 - 你对结果在做什么?也显示出来。

标签: jquery angular datetime timezone


【解决方案1】:

你可以使用 moment.js

let date = new Date().toUTCString();
console.log("UTC Date: " + date); // UTC Date: Thu, 27 Jun 2019 07:50:46 GMT

let localDate = moment(date).local(true).format("YYYY-MM-DD HH:mm:ss");
console.log("Moment Local Date: " + localDate); // Moment Local Date: 2019-06-27 13:20:46

【讨论】:

  • 我怎样才能用矩包在角度上做到这一点?
猜你喜欢
  • 2017-03-17
  • 2016-09-28
  • 1970-01-01
  • 1970-01-01
  • 2016-06-17
  • 2022-12-17
  • 2021-03-12
  • 2016-02-17
  • 2011-05-06
相关资源
最近更新 更多