根据总秒数转换指定格式时间

/**
 * @description 根据总秒数转换指定格式时间
 * @param {number} second 秒
 * @param {string} format 时间格式 如:YY-MM-DD hh:mm:ss
 * @param {boolean} padStart 是否填充两位数字不足补零
 * @return {string}
 */
export function calcTime(second, format, padStart = true) {
    let unitArr = [
        { name: 'YY', unit: 12 * 30 * 24 * 60 * 60 * 1 },
        { name: 'MM', unit: 30 * 24 * 60 * 60 * 1 },
        { name: 'DD', unit: 24 * 60 * 60 * 1 },
        { name: 'hh', unit: 60 * 60 * 1 },
        { name: 'mm', unit: 60 * 1 },
        { name: 'ss', unit: 1 },
    ];
    let _format = format || 'hh:mm:ss';
    let _second = second;
    let timeStr = '';
    unitArr.forEach(item => {
        let arr = _format.split(item.name);
        if (arr.length === 2) {
            let count = String(Math.floor(_second / item.unit));
            padStart && (count = count.padStart(2, '0'));
            timeStr += arr[0] + count;
            _second = _second - count * item.unit;
            _format = arr[1];
        }
    });
    timeStr += _format;
    return timeStr
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容