以秒为单位从 UTC 转换为实际时钟时间

问题描述 投票:0回答:1

从天气 API 获取数据时,印度位置的结果时区为

19800
,以秒为单位从 UTC 转换为实际时钟时间。

timezone : 19800

我需要真实的时钟时间。 ChatGPT 给了我这个:

var shiftInSeconds = 19800;

var currentTimeUTC = Date.now();
var shiftedTime = currentTimeUTC + (shiftInSeconds * 1000); // Convert seconds to milliseconds
var shiftedDate = new Date(shiftedTime);
var localTime = shiftedDate.toLocaleString();

console.log("Real time:", localTime);

我得到的结果是

Real time: 17/05/2024, 21:27:43

现在的实际时间是下午 03:57。有什么方法可以获取准确的本地时钟时间吗?

javascript timezone utc timezone-offset seconds
1个回答
0
投票

这对你有用吗?

我切换到

toISOString()
功能,因为您实际上使用的是 UTC 时间

内部时间表示实际上已经很准确了。这就是您打印的方式。


var shiftInSeconds = 19800;

var currentTimeUTC = Date.now();
var shiftedTime = currentTimeUTC + (shiftInSeconds * 1000); // Convert seconds to milliseconds
var shiftedDate = new Date(shiftedTime);
var localTime = shiftedDate.toISOString();

console.log("Real time:", localTime);
© www.soinside.com 2019 - 2024. All rights reserved.