JS时间格式化

Posted Langkye

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS时间格式化相关的知识,希望对你有一定的参考价值。

接受两个参数: (_date,_format)

  • _date:

    日期对象或日期格式字符串

  • _format:

    返回的格式:

    • y:年

    • M:月

    • d:日

    • h:时

    • m:分

    • s:秒

    • S:季度

  • 示例:dateFormat(new Date(),"yyyy-MM-dd")


function dateFormat(_data, _format) {
    if (typeof _data == "string") {
        let _m = _data.match(/(/Date((d+))/)/);
        if (_m && _m.length >= 3) {
            _data = parseInt(_m[2]);
        }
    }
    let data = new Date(_data);
    if (!data || data.toUTCString() == "Invalid Date") return "";
    let map = {
        "M": data.getMonth() + 1, // 月份
        "d": data.getDate(), // 日
        "h": data.getHours(), // 小时
        "m": data.getMinutes(), // 分
        "s": data.getSeconds(), // 秒
        "q": Math.floor((data.getMonth() + 3) / 3), // 季度
        "S": data.getMilliseconds() // 毫秒
    };
    let format = _format.replace(/([yMdhmsqS])+/g, function (all, t) {
        let _v = map[t];
        if (_v !== undefined) {
            if (all.length > 1) {
                _v = "0" + _v;
                _v = _v.substr(_v.length - 2);
            }
            return _v;
        } else if (t === "y") {
            return (data.getFullYear() + "").substr(4 - all.length);
        }
        return all;
    })
    return format;
}

以上是关于JS时间格式化的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Javadoc 中使用 @ 和 符号格式化代码片段?

为 Blogger 上的博客格式化代码片段 [关闭]

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

VSCode自定义代码片段——JS中的面向对象编程

VSCode自定义代码片段9——JS中的面向对象编程

Node.js JavaScript 片段中的跳过代码