将毫秒数量转换为时分秒字符串(毫秒数→转换为→00:00:00.000或00天00时00分00秒000毫秒形式)

简介: 将毫秒数量转换为时分秒字符串(毫秒数→转换为→00:00:00.000或00天00时00分00秒000毫秒形式)

可以隐藏数值为0的时间单位

可以转换为中文单位显示

/**将毫秒数量转换为时分秒字符串*/
toHourMinuteSecondByMillisecond(millisecond, cfg = {}) {
    let t = "",
        ms = Math.round(millisecond),
        s = Math.floor(ms / 1000),
        zh = cfg.zh,//显示中文“00天0时0分0秒0000毫秒”,为false的时候不会有天的概念,最多就是小时数量
        d = cfg.isDoubleDigits,//显示双位数
        f = cfg.isFourDigits,//显示4位数
        hz = cfg.hideZero,//隐藏为0的时间单位
        hd = cfg.hideDay,//隐藏天
        hh = cfg.hideHour,//隐藏小时
        hm = cfg.hideMinute,//隐藏分钟
        hs = cfg.hideSecond,//隐藏秒钟
        hms = cfg.hideMilliSecond;//隐藏毫秒钟
    let day = Math.floor(s / 3600 / 24),
        hour = Math.floor(s / 3600),
        min = Math.floor(s / 60) % 60,
        sec = s % 60,
        msec = ms % 1000;
    zh && (hour = hour % 24);//如果是显示中文单位,重新计算小时数量(要扣除天数*24)
    (hd || !zh) || (hz && !day) || (d && day < 10 && (t += "0"), t += day + (zh ? "天" : ":"));
    hh || (hz && !hour) || (d && hour < 10 && (t += "0"), t += hour + (zh ? "时" : ":"));
    hm || (hz && !min) || (d && min < 10 && (t += "0"), t += min + (zh ? "分" : ":"));
    hs || (hz && !sec) || (d && sec < 10 && (t += "0"), t += sec + (zh ? "秒" : ""));
    hms || (hz && !msec) || (f && msec < 1000 && (msec = msec.toString().padStart(3, "0")), t += (zh ? "" : ".") + msec + (zh ? "毫秒" : ""));
    return t;
},

延伸阅读


image.png

image.png

相关文章
|
5月前
|
C#
C# 版本的 计时器类 精确到微秒 秒后保留一位小数 支持年月日时分秒带单位的输出
这篇2010年的文章是从别处搬运过来的,主要包含一个C#类`TimeCount`,该类有多个方法用于处理时间相关的计算。例如,`GetMaxYearCount`计算以毫秒为单位的最大年数,`GetCurrentTimeByMiliSec`将当前时间转换为毫秒,还有`SecondsToYYMMDDhhmmss`将秒数转换为年月日时分秒的字符串。此外,类中还包括一些辅助方法,如处理小数点后保留一位数字的`RemainOneFigureAfterDot`。
|
5月前
|
程序员
程序员必知:将时间的秒数转化为分钟数
程序员必知:将时间的秒数转化为分钟数
73 0
|
6月前
|
C语言
编写一个程序, 给出两个时间,计算出两个时间之差,如给出1120表示11:20,1330表示13:30, 将时间间隔以分钟为单位输出。
这是一个C语言程序,它接收两个时间(小时:分钟格式)作为输入,然后计算并输出两个时间之间的差值。代码包括输入处理、时间转换为分钟以及计算时间差。程序运行结果展示了一个具体的示例时间差。
53 0
|
12月前
|
JSON 小程序 JavaScript
小程序返回的时间戳转化成时间
小程序返回的时间戳转化成时间
47 0
|
Java BI
Java 某个起始时间,固定的累加天数,计算周期
Java 某个起始时间,固定的累加天数,计算周期
157 1
|
前端开发
时间秒转换为毫秒
时间秒转换为毫秒
109 0
|
Serverless Python
函数计算默认使用的是 UTC 时间
函数计算默认使用的是 UTC 时间
168 0
|
Java
java判断当前时间是否在某个时间区间内(可精确到毫秒)
java判断当前时间是否在某个时间区间内(可精确到毫秒)
837 0
java判断当前时间是否在某个时间区间内(可精确到毫秒)
Java&nbsp;计算计算两个日期之间的间隔…
Java&nbsp;计算计算两个日期之间的间隔…
150 0