0

我尝试查看结果以将 pst 中的数据和时间转换为 utc 时区。我找不到任何内容。有人可以帮我实现这一点。谢谢。

4

1 回答 1

0

有人在评论中提到了一个链接: Convert date to another timezone in JavaScript

该答案明确处理时区。我赞成另一种方法:如果你打电话new Date().getTime(),你总是会得到 UTC 的毫秒数。然后,无论您在重建日期时处于哪个时区,都可以使用如下代码:

var offsetMillis = -date.getTimezoneOffset() * 60000;

function convertToDate(){
  var utcMillis = document.getElementById('leftMillis').value;
  var x = new Number(utcMillis);
  var date = new Date(x);
  document.getElementById('leftDate').value=date.toDateString()+' '+date.toLocaleTimeString();
  x -= offsetMillis;
  date = new Date(x);
  document.getElementById('leftUTCDate').value=date.toDateString()+' '+date.toLocaleTimeString();
}

您正在做的是从当前的 UTC 毫秒中减去 UTC 的偏移量。我喜欢这个选项,因为它很好地处理了字符串格式。

在该站点的左栏中粘贴一些 UTC 毫秒以查看该代码的运行情况。

另一种选择(可能是更标准的选择?)是简单地构造 date:new Date(millis)然后使用来自 date:getUTCHours()等的 UTC 方法。

于 2013-08-27T18:02:13.020 回答