js常用的日期转换方法

日期操作类

1. 日期或日期字符串转周几
代码
function getWeekDay(date) {
    if (typeof date === 'string') {
        date = date.replace(/-/g, '/')
    }

    const weekDay = ['周日', '周一', '周二', '周三', '周四', '周五', '周六'];
    const myDate = new Date(Date.parse(date));
    return weekDay[myDate.getDay()];
}

使用
执行输出
getWeekDay(new Date());周六
getWeekDay(‘2012-12-12’);周三
2. 日期或日期字符串格式化
代码
function formatDateTime(date, format) {
    if (date) {
        if (typeof date === 'string') {
            date = date.replace(/-/g, '/')
        }
        date = new Date(Date.parse(date));
        let y = date.getFullYear();
        let m = date.getMonth() + 1;
        m = m < 10 ? '0' + m: m;
        let d = date.getDate();
        d = d < 10 ? '0' + d: d;
        let h = date.getHours();
        h = h < 10 ? '0' + h: h;
        let minute = date.getMinutes();
        minute = minute < 10 ? '0' + minute: minute;
        let second = date.getSeconds();
        second = second < 10 ? '0' + second: second;
        if (!format) {
            format = 'YYYY-MM-DD hh:mm:ss';
        }
        if (format.indexOf('YYYY') >= 0 || format.indexOf('yyyy') >= 0) {
            format = format.replace(/YYYY/g, y);
            format = format.replace(/yyyy/g, y);
        }
        if (format.indexOf('MM') >= 0) {
            format = format.replace(/MM/g, m);
        }
        if (format.indexOf('DD') >= 0 || format.indexOf('dd') >= 0) {
            format = format.replace(/DD/g, d);
            format = format.replace(/dd/g, d);
        }
        if (format.indexOf('HH') >= 0 || format.indexOf('hh') >= 0) {
            format = format.replace(/hh/g, h);
            format = format.replace(/HH/g, h);
        }
        if (format.indexOf('mm') >= 0) {
            format = format.replace(/mm/g, minute);
        }
        if (format.indexOf('SS') >= 0 || format.indexOf('ss') >= 0) {
            format = format.replace(/ss/g, second);
            format = format.replace(/SS/g, second);
        }
        return format;
    } else {
        return '';
    }
}
使用
执行输出
formatDateTime(new Date(), ‘YYYY-MM-DD hh:mm:ss’)2019-08-10 13:33:39
formatDateTime(new Date(), ‘YYYY-MM-DD’);2019-08-10
formatDateTime(new Date(), ‘HHmmSS YYYYMMDD’);134110 20190810
formatDateTime(‘1994-05-28’, ‘MM-dd’);05-28
formatDateTime(‘1994/05/28’, ‘MM-dd’);05-28
formatDateTime(‘1994-05-28’, ‘MM/dd’);05/28
表达式说明
表达式说明
yyyy
YYYY
MM
DD
dd
HH
hh
mm
ss
SS
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值