gpt4 book ai didi

JavaScript 两个日期之间的差异错误为一小时

转载 作者:行者123 更新时间:2023-12-02 14:27:00 25 4
gpt4 key购买 nike

我正在尝试计算两个时间之间的差异,例如 10:54 和 09:00(预期差异为 1 小时 54 分钟):

Date.prototype.diffTime = function(date){
return new Date(this-date);
}

但这比我预期的时间多了一个小时:

Thu Jan 01 1970 10:54:00 GMT+0100 (CET)
Thu Jan 01 1970 09:00:00 GMT+0100 (CET)
Thu Jan 01 1970 02:54:00 GMT+0100 (CET)

那为什么要增加一小时呢?输入时间正确。当我使用 getTime() 时,我得到 1.9 小时 (this-date/1000/60/60),这也是正确的。

感谢您的评论。我现在编写了一个更简单的函数来满足我的需要:

function getTimeHHMI(date){
var minutes = date/1000/60;
var hours = Math.floor(minutes/60);
minutes -= hours*60;

return [hours, minutes].join(':'); // returns 1:54
}

最佳答案

当您将 this-date 传递给 new Date 时,该值将被解释为表示 1:54am 的 unix 时间戳。 GMT+0 凌晨 1:54 与 GMT+1 凌晨 2:54 相同。 IE。浏览器将 unix 时间戳转换为您的本地时间。

持续时间转换为日期值没有意义,因为持续时间与时区无关。

关于JavaScript 两个日期之间的差异错误为一小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38150313/

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