如何将分钟格式化为小时和分钟,但仅显示小时(如果's>60分钟

How can I format minutes into hour and minutes but only show hour if it's > 60 minutes?

本文关键字:小时 分钟 如果 60分钟 显示 gt 格式化      更新时间:2023-09-26

我有一个函数,可以将分钟转换为小时/分钟格式:

return Math.floor(diffMins / 60) + " Hour " + diffMins % 60 + " Minutes.";

我想做的是,如果没有小时,那么"0小时"就不会显示。有人能推荐一个我能做到这一点的好方法吗?

地板;检查是否超过0小时;否则,输出空字符串;否则,检查是否为1小时,如果为,则输出"1小时",如果不是,则输出小时数+"小时"

var h = Math.floor(diffMins / 60);
var hours = (h > 0 ? (h==1 ? "1 hour" : h+" hours") : "");
var mins = diffMins % 60;
return hours + mins > 1 ? mins + " minutes." : " 1 minute." ;

这会起作用。。

return (diffMins>60?Math.floor(diffMins / 60) + " Hour ":"") + diffMins % 60 + " Minutes."
return Math.floor(diffMins / 60) ==0 ? diffMins % 60 + " Minutes." : Math.floor(diffMins / 60) + " Hour " + diffMins % 60 + " Minutes."
function makePlural(count, words) {
    if (count == 0 || count > 1)
        return count + " " + words[1];
    return count + " " + words[0];
}    
function minutesToString(diffMins) {
    var hours   = Math.floor(diffMins / 60);
    var minutes = diffMins % 60;
    var hoursStr = (hours == 0) ? "" : (makePlural(hours, ["Hour", "Hours"]) + " ");
    var minutesStr = makePlural(minutes, ["minute", "minutes"]);
    return hoursStr + minutesStr;
}
function yourFunction(diffMins) {
    if (minutes < 60) {
        return minutes + " Minutes.";
    }
    return Math.floor(minutes / 60) + " Hour " + minutes % 60 + " Minutes.";
}