我每天在世界标准时间1AM发生一个事件。我正在尝试找到向用户显示本地时间的最简单方法:
document.getElementById('local').innerHTML=(new Date(3600000)).toLocaleTimeString();
工作半年。但这并没有考虑到日光节约时间,因此现在在使用日光节约的地方,它会减少一个小时。对于那些不使用夏令时的地方来说是正确的。
答案 0 :(得分:1)
如果要以区域设置格式显示在世界标准时间凌晨1点发生的事件,则还必须包括日期部分。您不能只使用new Date(3600000)
,因为它是1970-01-01 01:00:00 UTC,所以您将获得当时的时区偏移量(由于夏令时或因为区域设置具有更改了其偏移量。)
因此,如果您想在接下来的7天中每隔凌晨1点UTC,那么:
var d = new Date();
d.setUTCHours(1,0,0,0);
for (var i=7; i>0; i--) {
console.log(d.toLocaleString());
d.setUTCDate(d.getUTCDate() + 1);
}
答案 1 :(得分:0)
const timeZoneValue = "Asia/Kolkata";
const localeStr = "en-US";
document.getElementById('local').innerHTML=(new Date().toLocaleString(localeStr , {timeZone: timeZoneValue}));
答案 2 :(得分:0)
var oneam = new Date(new Date().setUTCHours(1,0,0,0));
console.log(oneam.toString())
今天将在世界标准时间凌晨1点作为当地时间字符串显示。