我已经尝试过调整结果以将数据和时间转换为pst到utc时区。我找不到任何人。可以请任何人帮我解决这个问题。谢谢。
答案 0 :(得分: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 millis中减去UTC的偏移量。我喜欢这个选项,因为它很好地处理了字符串格式。
Paste some UTC milliseconds位于该网站的左栏,以查看该代码的实际效果。
另一个选项(可能更标准的选项?)是简单地构造日期:new Date(millis)
然后使用日期的{UTC}方法:getUTCHours()
等。