ts封装格式化时间:比较好用的格式化时间代码,适用ts相关的开发,包含处理ios时间的NAN

12 篇文章 1 订阅
2 篇文章 0 订阅

在项目中常遇到格式化时间为自己想要的样子,但是如果引用一个组件又觉得太大了,于是整理了一个自己觉得好用的代码,记录于此,一是方便其它开发者使用,二是自己忘了的时候也可以再看看。
我写技术文章没那么多废话,直接上代码:
1.在ts粘贴:

const formateDate = (date: any, formater: any) => {
    if (!date) {
        return '-- : --'
    }
    date = date.toString().replace(/-/g, '/')
    var nowDate = new Date(date)
    var year: any = nowDate.getFullYear()
    var month: any = nowDate.getMonth() + 1
    month = month < 10 ? '0' + month : month
    var day: any = nowDate.getDate()
    day = day < 10 ? '0' + day : day
    var hour: any = nowDate.getHours()
    hour = hour < 10 ? '0' + hour : hour
    var minute: any = nowDate.getMinutes()
    minute = minute < 10 ? '0' + minute : minute
    var second: any = nowDate.getSeconds()
    second = second < 10 ? '0' + second : second
    var _after = year + '-' + month + '-' + day
    var week: any = nowDate.getDay();
    var weeks = new Array(
        "周日",
        "周一",
        "周二",
        "周三",
        "周四",
        "周五",
        "周六"
    );
    week = weeks[week];
    if (formater) {
        _after = formater
            .replace('yyyy', year)
            .replace('MM', month)
            .replace('dd', day)
            .replace('HH', hour)
            .replace('mm', minute)
            .replace('ss', second)
            .replace('week', week)

    }
    return _after
}

2.在ts里使用

let time1 = formateDate("2022-07-26 14:32:36.2222","yyyy-MM-dd HH:mm:ss");
console.log(time1);//结果是:2022-07-26 14:32:36

let time2 = formateDate("2022-07-26 14:32:36.2222","yyyy-MM-dd HH:mm");
console.log(time2);//结果是:2022-07-26 14:32

let time3 = formateDate("2022-07-26 14:32:36.2222","yyyy-MM-dd");
console.log(time3);//结果是:2022-07-26

let time4 = formateDate("2022-07-26 14:32:36.2222","yyyy年MM月dd日 HH时mm分ss秒");
console.log(time4);//结果是:2022年07月26日 14时32分36秒

let time5 = formateDate("2022-07-26 14:32:36.2222","yyyy年MM月dd日");
console.log(time5);//结果是:2022年07月26日

//等

//新增加了根据当前日期推算是周几
let time6= formateDate("2022-10-26 14:32:36.2222","yyyy-MM-dd (week)");
console.log(time6);//结果是:2022-10-26 (周三)

3.感谢
如果觉得写得好,记得收藏哦 ~ (O_O) ~

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值