首页 > 解决方案 > 如何计算小时到分钟?

问题描述

我面临一些问题,我希望剩余时间显示为小时和分钟。

现在的问题是,在计算时间时,它会显示例如1.97小时。我希望时间像1.30(1h30min)。

我也面临时间到达的问题,我希望将剩余时间计算到下一个open

以下是我到目前为止所做的代码:

var openTime = [{
    open: -1,
    close: -1
}, {
    open: 8,
    close: 21
}, {
    open: 8,
    close: 21
}, {
    open: 8,
    close: 21
}, {
    open: 8,
    close: 21
}, {
    open: 8,
    close: 21
}, {
    open: 8,
    close: 17
}]

var current = new Date();
var day = current.getDay();
var nextday = current.getDay()+1;
var currentTime = current.getHours() + (current.getMinutes() / 60);
var remainTime = 0;
if (openTime[day].close - (currentTime).toFixed(2) >= 0) {
    remainTime = (openTime[day].close - currentTime).toFixed(2)
console.log("close in %s hours", remainTime);
document.getElementById("hours").innerHTML = "close in " + remainTime+ " hours"
}
else if (openTime[day].close - (currentTime).toFixed(2) <= 0) {
     remainTime = (currentTime).toFixed(2) + (openTime[nextday].open)
document.getElementById("hours").innerHTML = "open in " + remainTime+ " hours"
}
<div id="hours"></div>

标签: javascripthtml

解决方案


function timeConvert(n) {
    var num = n;
    var hours = (num / 60);
    var rhours = Math.floor(hours);
    var minutes = (hours - rhours) * 60;
    var rminutes = Math.round(minutes);
    return num + " minutes = " + rhours + " hour(s) and " + rminutes + " minute(s).";
    }
    console.log(timeConvert(200));

我想你可以接受这个。


推荐阅读