封装时间戳转换方法

今天小汪写的是一个简便的时间戳转换的方法,由于项目中有好几处需要展示时间,但是后台大多都是返回的时间戳(毫秒,或者秒),每次写转换的方法太过麻烦,有需要的伙伴如果看到我的帖子,复制即可。如果帮到各位,嘿嘿 老规矩哟。

function conversionTime(timestamp, format){
    //timestamp = 时间戳  format = 格式
    let data = timestamp.toString().length < 13 ?  new Date(timestamp*1000) : new Date(timestamp);//判断时间戳是否需要*1000
    let Y = data.getFullYear(); //获取传入时间戳的年
    let M = data.getMonth()+1; //获取月份
    let D = data.getDate(); //获取当前天
    let H = data.getHours() < 10 ? `0${data.getHours()}` : data.getHours();  //小时>10 时默认在前面加0
    let m = data.getMinutes() < 10 ? `0${data.getMinutes()}` : data.getMinutes(); //分钟>10时默认在前面加0
    let s = data.getSeconds() < 10 ? `0${data.getSeconds()}` : data.getSeconds(); //秒>10时默认在前面加0
    format = format || 'Y-M-D H:m:s';//设定一个默认格式
    format = format.indexOf('Y') > -1 ? format.replace('Y', Y) : format;
    format = format.indexOf('M') > -1 ? format.replace('M', M) : format;
    format = format.indexOf('D') > -1 ? format.replace('D', D) : format;
    format = format.indexOf('H') > -1 ? format.replace('H', H) : format;
    format = format.indexOf('h') > -1 ? format.replace('h', H > 12 ? H - 12 : H) : format;//传H则是24小时制 h则是12小时制
    format = format.indexOf('m') > -1 ? format.replace('m', m) : format;
    format = format.indexOf('s') > -1 ? format.replace('s', s) : format;
    console.log(format);
  }
  conversionTime(1586087763000);//打印结果:2020-4-5 19:56:03
  conversionTime(1586087763,"Y-M-D H:m:s");//打印结果:2020-4-5 19:56:03
  conversionTime(1586087763,"Y/M/D h:m:s");//打印结果:2020/4/5 7:56:03
  conversionTime(1586087763,"Y年M月D日 H:m:s");//打印结果:2020年4月5日 19:56:03

因为小汪水准不高,所以这个封装比较简单,主要也是为了自己需要的时候不用重新花时间去写,大佬不喜轻点喷。小伙伴 下篇再见啦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值