美文网首页
格式化日期

格式化日期

作者: 张晓畅 | 来源:发表于2020-01-11 08:58 被阅读0次

上来就干货

/**
 * @description 数字补0
 * @param {Number} n
 * @return {String} result
 */
const formatNumber = n => {
    n = n.toString();
    return n[1] ? n : '0' + n;
}
/**
 * @description 格式化日期
 * @param {Date} date 时间戳 默认当前日期
 * @param {string} formatType  默认'YYYY-mm-dd' 日期格式 eg: YYYY-mm-dd HH:MM:SS
 * @return {String} 日期
 */
const formatTime = (formatType, date) => {
    // let time = date? new Date(date.replace(/-/g, "/")) : new Date();

    date = date || new Date();
    formatType = formatType || 'YYYY-mm-dd';
    const year = date.getFullYear(); // 年
    const month = date.getMonth() + 1; // 月
    const day = date.getDate(); // 日
    const hours = date.getHours(); // 时
    const minutes = date.getMinutes(); // 分
    const seconds = date.getSeconds(); // 秒

    // const timeDate = [year, month, day, hours, minutes, seconds].map(formatNumber);

    // formatType eg: 'YYYY-mm-dd HH:MM:SS'、'yyy-mm-dd HH:MM'、'yyy-mm'、'yyyy'
    formatType = formatType.replace(/(YYYY|mm|dd|HH|MM|SS)/gi, function ($0) {
        switch ($0) {
            case 'YYYY':
            case 'yyyy':
                return formatNumber(year);
                break;
            case 'mm':
                return formatNumber(month);
                break;
            case 'dd':
                return formatNumber(day);
                break;
            case 'HH':
                return formatNumber(hours);
                break;
            case 'MM':
                return formatNumber(minutes);
            case 'SS':
                return formatNumber(seconds);
                break;

            default:
                break;
        }
    });

    console.log(12, formatType);
    return formatType;
}

export default formatTime 

相关文章

网友评论

      本文标题:格式化日期

      本文链接:https://www.haomeiwen.com/subject/mnjvactx.html