工具类方法分享

13次阅读

共计 877 个字符,预计需要花费 3 分钟才能阅读完成。

工具类方法分享

 工欲善其事,必先利其器 
  • 日期转换
 废话不多说,直接上代码
/**
 *    用来转换日期的
 *  @param data 需要格式化时间  默认当前时间
 *  @param format 格式化规则 默认 YYYY-MM-DD
 *  @param timer 需要计算的时间 例如 一周后 timer = 7 * 24 * 3600 * 1000  一周前 timer = - 7 * 24 * 3600 * 1000
 * 
 */
export function moment(date = ''){let util = {};
    if(typeof date !== 'string'){return '时间格式不对';}
    util.format = (format = 'YYYY-MM-DD',timer) =>{let d = date ? new Date(date).getTime() : new Date().getTime();
        if(timer){d += timer;}
        d = new Date(d);
        let YYYY = d.getFullYear(),
            MM =  `0${d.getMonth()+1}`.slice(-2),
            DD = `0${d.getDate()}`.slice(-2),
            HH = `0${d.getHours()}`.slice(-2),
            mm = `0${d.getMinutes()}`.slice(-2);
        
        format = format.replace(/YYYY/i , ()=> YYYY);
        format = format.replace(/MM/i , ()=> MM);
        format = format.replace(/DD/i , ()=> DD);
        format = format.replace(/HH/i , ()=> HH);
        format = format.replace(/mm/i , ()=> mm);
        return format;
    };
    return util;
}

在页面上调用

moment().format('YYYY-MM-DD HH:mm')

// 计算一周后的时间则是 moment().format('YYYY-MM-DD HH:mm',7 * 24 * 3600 *1000)

非常简陋,如果哪里有问题可以提出,或者哪里可以优化欢迎指出

正文完
 0