日期格式化(巧妙字符串剪切版)

81 篇文章 7 订阅

日期格式化

记录一个日期格式化时的小技巧。

问题:随意一个日期指定格式化后的格式为 HH:mm:dd 格式,且 年 月 日 之间 连接符随意。

方法一:【时间判断法】

const dateFormatter = (date: string | Date | number, c?: string) => {
    const d = new Date(date);
    // 年月日
    const year = d.getFullYear();
    const month = (d.getMonth() + 1) < 10 ? `0${d.getMonth() + 1}` : d.getMonth() + 1;
    const day = d.getDate() < 10 ? `0${d.getDate()}` : d.getDate();

    if (c) return `${year}${c}${month}${c}${day}`;
    else return `${year}${month}${day}日`
}

let a = dateFormatter('2020-1-12');
console.log(a); // 2020年01月12日

let a = dateFormatter('2020-1-12', '/');
console.log(a); // 2020/01/12

时间判断法:通过对 月份和天数 是否小于 10 进行判断,并进行 补0 操作

方法二:【字符串剪切法】

const dateFormatter = (date: string | Date | number, c?: string) => {
    const d = new Date(date);
    // 年月日
    const year = d.getFullYear();
    const month = (d.getMonth() + 1 + 100).toString().substr(1);
    const day = (d.getDate() + 100).toString().substr(1);

    if (c) return `${year}${c}${month}${c}${day}`;
    else return `${year}${month}${day}日`
}

let a = dateFormatter('2020-1-12');
console.log(a); // 2020年01月12日

let a = dateFormatter('2020-1-12', '/');
console.log(a); // 2020/01/12

字符串剪切法:通过对 月份和天数分别+100 ,然后 剪切掉第一位的 1,即可得到一个两位的目标格式。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值