1. 程式人生 > >JS日期格式轉換

JS日期格式轉換

將xx-xx-xx xx:xx:xx
或者xx/xx/xx xx:xx:xx
或xx-xx-xx xx-xx-xx格式的時間
轉換為中文的xx年xx月xx日 xx時xx分xx秒

今天的自己寫的三種,個人最滿意的是第三種,不過第二種好像最簡單粗暴
這只是初學者的寫法,希望有大神指點更簡單高效的方法
第一種

var str = '2018-9-10 21:18:25';
    var str = str.replace(/-/,function(){
        return '年'
    });
    str = str.replace(/-/,function(){
        return
'月' }); str = str.replace(/ /,function(){ return '日 ' }); str = str.replace(/:/,function(){ return '時' }); str = str.replace(/:/,function(){ return '分' }); str = str.replace(/$/,function(){ return '秒' }); console.log(str);

第二種

var str
= '2018/9/10 21:18:25'; str = str.replace(/(\/|-)/, '年'); str = str.replace(/(\/|-)/, '月'); str = str.replace(' ','日 '); str = str.replace(/(:|-)/,'時'); str = str.replace(/(:|-)/,'分'); str = str.replace(/$/,'秒'); console.log(str);

第三種

function dateReplace (str){
    function zero(n){
        if(n<10) return '0'+n;
        return n;
    }
reg = /(\d{4})(-|\/)(\d{2}|\d)(-|\/)(\d{2}|\d)( ) (\d{2}|\d)(:)(\d{2}|\d)(:)(\d{2}|\d)/g;
//程式碼折行只是為了方便閱讀 var cur = reg.exec(str); var temp = cur[1]+'年'+zero(cur[3])+'月'+zero(cur[5])+'日'+cur[6] +zero(cur[7])+ '時'+zero(cur[9])+'分'+zero(cur[11])+'秒'; //程式碼折行只是為了方便閱讀 return temp; } var str = '2018/9/10 21:18:25'; console.log(dateReplace(str)); // 例子 var str = '2018-11/29 3:10:55'; console.log(dateReplace(str));

前端新手菜鳥 求指點