美文网首页
时间字符串格式的转化

时间字符串格式的转化

作者: 追马的时间种草 | 来源:发表于2019-08-29 15:20 被阅读0次

    将时间time='2019-8-28 12:6:23'转化成2019年07月24日 12时06分23秒

    方案一:(太low)

    //利用replace方法将连接符进行替换相应的字
         let time='2019-8-28 12:6:23'
        time=time.replace('-','年').replace('-','月').replace('','日').replace(':','时').replace(':','分')+'秒'
    

    方案二:(太麻烦)

     //先找出连接符的索引值,再进行字符串截取,拼接
     var time='2019-8-28 12:6:23'
     var y=time.indexOf('-')
     var m=time.lastIndexOf('-')
     var d=time.indexOf(' ')
     var h=time.indexOf(':')
     var minu=time.lastIndexOf(':')
     time=time.substring(0,y)+'年'+time.substring(y+1,m)+"月"+time.substring(m+1,d)+"日"+time.substring(d+1,h)+"时"+time.substring(h+1,minu)+"分"+time.substring(minu+1)+"秒"
     console.log(time)
    

    方案三:(提倡)

    //建议先熟悉正则,再看此方法。
    //利用正则将字符串连接符捕获,再以这些连接符进行分割返回数组
    //再进行拼接
    //不足补零
     var time='2019-8-28 12:6:23'
     let addZero=val=>val.length<2?'0'+val:val;
     let ary=time.split(/(?: |-|:)/g);//["2019", "8", "28", "12", "6", "23"];
     time=ary[0]+'年'+addZero(ary[1])+'月'+addZero(ary[2])+'日'+''+ary[3]+"时"+addZero(ary[4])+'分'+addZero(ary[5])+'秒'
     console.log(time)//"2019年08月28日 12时06分23秒"
    

    相关文章

      网友评论

          本文标题:时间字符串格式的转化

          本文链接:https://www.haomeiwen.com/subject/sspiectx.html