Open-Source World

          let's learn and study.
          posts - 28, comments - 23, trackbacks - 0, articles - 1

          js格式化時間

          Posted on 2007-09-13 15:04 tearofmoscow 閱讀(2869) 評論(0)  編輯  收藏
        1. function DateUtil(){}   
        2. /**  
        3. *功能:格式化時間  
        4. *示例:DateUtil.Format("yyyy/MM/dd","Thu Nov 9 20:30:37 UTC+0800 2006 ");  
        5. *返回:2006/11/09  
        6. */  
        7. DateUtil.Format=function(fmtCode,date){   
        8.     var result,d,arr_d;   
        9.        
        10.     var patrn_now_1=/^y{4}-M{2}-d{2}\sh{2}:m{2}:s{2}$/;   
        11.     var patrn_now_11=/^y{4}-M{1,2}-d{1,2}\sh{1,2}:m{1,2}:s{1,2}$/;   
        12.        
        13.     var patrn_now_2=/^y{4}\/M{2}\/d{2}\sh{2}:m{2}:s{2}$/;   
        14.     var patrn_now_22=/^y{4}\/M{1,2}\/d{1,2}\sh{1,2}:m{1,2}:s{1,2}$/;   
        15.        
        16.     var patrn_now_3=/^y{4}年M{2}月d{2}日\sh{2}時m{2}分s{2}秒$/;   
        17.     var patrn_now_33=/^y{4}年M{1,2}月d{1,2}日\sh{1,2}時m{1,2}分s{1,2}秒$/;   
        18.        
        19.     var patrn_date_1=/^y{4}-M{2}-d{2}$/;   
        20.     var patrn_date_11=/^y{4}-M{1,2}-d{1,2}$/;   
        21.        
        22.     var patrn_date_2=/^y{4}\/M{2}\/d{2}$/;   
        23.     var patrn_date_22=/^y{4}\/M{1,2}\/d{1,2}$/;   
        24.        
        25.     var patrn_date_3=/^y{4}年M{2}月d{2}日$/;   
        26.     var patrn_date_33=/^y{4}年M{1,2}月d{1,2}日$/;   
        27.        
        28.     var patrn_time_1=/^h{2}:m{2}:s{2}$/;   
        29.     var patrn_time_11=/^h{1,2}:m{1,2}:s{1,2}$/;   
        30.     var patrn_time_2=/^h{2}時m{2}分s{2}秒$/;   
        31.     var patrn_time_22=/^h{1,2}時m{1,2}分s{1,2}秒$/;   
        32.        
        33.     if(!fmtCode){fmtCode="yyyy/MM/dd hh:mm:ss";}   
        34.     if(date){   
        35.         d=new Date(date);   
        36.         if(isNaN(d)){   
        37.             msgBox("時間參數非法\n正確的時間示例:\nThu Nov 9 20:30:37 UTC+0800 2006\n或\n2006/       10/17");   
        38.             return;}   
        39.     }else{   
        40.         d=new Date();   
        41.     }   
        42.   
        43.     if(patrn_now_1.test(fmtCode))   
        44.     {   
        45.         arr_d=splitDate(d,true);   
        46.         result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;   
        47.     }   
        48.     else if(patrn_now_11.test(fmtCode))   
        49.     {   
        50.         arr_d=splitDate(d);   
        51.         result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;   
        52.     }   
        53.     else if(patrn_now_2.test(fmtCode))   
        54.     {   
        55.         arr_d=splitDate(d,true);   
        56.         result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;   
        57.     }   
        58.     else if(patrn_now_22.test(fmtCode))   
        59.     {   
        60.         arr_d=splitDate(d);   
        61.         result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;   
        62.     }   
        63.     else if(patrn_now_3.test(fmtCode))   
        64.     {   
        65.         arr_d=splitDate(d,true);   
        66.         result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日"+" "+arr_d.hh+"時"+arr_d.mm+"分"+arr_d.ss+"秒";   
        67.     }   
        68.     else if(patrn_now_33.test(fmtCode))   
        69.     {   
        70.         arr_d=splitDate(d);   
        71.         result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日"+" "+arr_d.hh+"時"+arr_d.mm+"分"+arr_d.ss+"秒";   
        72.     }   
        73.        
        74.     else if(patrn_date_1.test(fmtCode))   
        75.     {   
        76.         arr_d=splitDate(d,true);   
        77.         result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd;   
        78.     }   
        79.     else if(patrn_date_11.test(fmtCode))   
        80.     {   
        81.         arr_d=splitDate(d);   
        82.         result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd;   
        83.     }   
        84.     else if(patrn_date_2.test(fmtCode))   
        85.     {   
        86.         arr_d=splitDate(d,true);   
        87.         result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd;   
        88.     }   
        89.     else if(patrn_date_22.test(fmtCode))   
        90.     {   
        91.         arr_d=splitDate(d);   
        92.         result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd;   
        93.     }   
        94.     else if(patrn_date_3.test(fmtCode))   
        95.     {   
        96.         arr_d=splitDate(d,true);   
        97.         result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日";   
        98.     }   
        99.     else if(patrn_date_33.test(fmtCode))   
        100.     {   
        101.         arr_d=splitDate(d);   
        102.         result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日";   
        103.     }   
        104.     else if(patrn_time_1.test(fmtCode)){   
        105.         arr_d=splitDate(d,true);   
        106.         result=arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;   
        107.     }   
        108.     else if(patrn_time_11.test(fmtCode)){   
        109.         arr_d=splitDate(d);   
        110.         result=arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;   
        111.     }   
        112.     else if(patrn_time_2.test(fmtCode)){   
        113.         arr_d=splitDate(d,true);   
        114.         result=arr_d.hh+"時"+arr_d.mm+"分"+arr_d.ss+"秒";   
        115.     }   
        116.     else if(patrn_time_22.test(fmtCode)){   
        117.         arr_d=splitDate(d);   
        118.         result=arr_d.hh+"時"+arr_d.mm+"分"+arr_d.ss+"秒";   
        119.     }   
        120.     else{   
        121.         msgBox("沒有匹配的時間格式!");   
        122.         return;   
        123.     }   
        124.        
        125.    return result;   
        126. };   
        127. function splitDate(d,isZero){   
        128.     var yyyy,MM,dd,hh,mm,ss;   
        129.     if(isZero){   
        130.          yyyy=d.getYear();   
        131.          MM=(d.getMonth()+1)<10?"0"+(d.getMonth()+1):d.getMonth()+1;   
        132.          dd=d.getDate()<10?"0"+d.getDate():d.getDate();   
        133.          hh=d.getHours()<10?"0"+d.getHours():d.getHours();   
        134.          mm=d.getMinutes()<10?"0"+d.getMinutes():d.getMinutes();   
        135.          ss=d.getSeconds()<10?"0"+d.getSeconds():d.getSeconds();   
        136.     }else{   
        137.          yyyy=d.getYear();   
        138.          MM=d.getMonth()+1;   
        139.          dd=d.getDate();   
        140.          hh=d.getHours();   
        141.          mm=d.getMinutes();   
        142.          ss=d.getSeconds();     
        143.     }   
        144.     return {"yyyy":yyyy,"MM":MM,"dd":dd,"hh":hh,"mm":mm,"ss":ss};     
        145. }   
        146. function msgBox(msg){   
        147.     window.alert(msg);   
        148. }  

        149. 只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 板桥市| 壶关县| 巴马| 南和县| 临高县| 达日县| 龙泉市| 三门县| 黄陵县| 新宁县| 北票市| 宁夏| 仁寿县| 衡南县| 临猗县| 阿坝县| 普定县| 桦甸市| 井研县| 阿拉善左旗| 桃源县| 山丹县| 茂名市| 昌吉市| 克山县| 建昌县| 全椒县| 加查县| 家居| 固始县| 五莲县| 边坝县| 弥勒县| 和政县| 堆龙德庆县| 九寨沟县| 诏安县| 莱州市| 梨树县| 青海省| 远安县|