gpt4 book ai didi

Javascript 的日期对象 toLocaleTimeString 添加一个小时

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:58:39 27 4
gpt4 key购买 nike

我正在尝试从用户单击按钮时创建一个计时器。为此,我尝试计算两个 date 对象之间的差异。当我输出差异时,它起作用了。但是,toLocaleTimeString 调用会返回一个额外添加了一个小时的字符串:

var start;
var timer;
function myTimer() {
var current = new Date();
var difference = new Date(current - start);
console.log(difference.getTime(), difference.toLocaleTimeString(navigator.language));
document.getElementById("timer").innerHTML = difference;
document.getElementById("timer2").innerHTML = difference.toLocaleTimeString('en-GB');
}
start = new Date();
timer = setInterval(myTimer, 1000);
draw();
<h1 id="timer"></h1>
<h1 id="timer2"></h1>

我做错了什么?

最佳答案

options 参数中将时区指定为 UTC。否则,差异 日期将调整为用户代理的时区。

document.getElementById("timer2").innerHTML = difference.toLocaleTimeString('en-GB', { timeZone: 'UTC' });

MDN documentation 中阅读有关 options 参数和 toLocaleTimeString 的更多信息.

var start;
var timer;
function myTimer() {
var current = new Date();
var difference = new Date(current - start);
console.log(difference.getTime(), difference.toLocaleTimeString(navigator.language));
document.getElementById("timer").innerHTML = difference;
document.getElementById("timer2").innerHTML = difference.toLocaleTimeString(navigator.language, { timeZone: 'UTC', hour12: false });
}
start = new Date();
timer = setInterval(myTimer, 1000);
draw();
<h1 id="timer"></h1>
<h1 id="timer2"></h1>

关于Javascript 的日期对象 toLocaleTimeString 添加一个小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33481742/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com