日期:2014-05-16  浏览次数:20454 次

js中将时间转换为 "yyyy-MM-dd HH:mm:ss" 格式
在javascript中,关于时间格式的转换。
可以将“2010-1-2” 转换为 “2010-01-02 00:00:00”
或者将“2010-1-2 2:13:6" 转换为 “2010-01-02 02:13:06”





第一种格式转换



 <script>
Number.prototype.pad2 =function(){   
          return this>9?this:'0'+this;   
        }   
        Date.prototype.format=function (format) {   
            var it=new Date();   
            var it=this;   
            var M=it.getMonth()+1,H=it.getHours(),m=it.getMinutes(),d=it.getDate(),s=it.getSeconds();   
            var n={ 'yyyy': it.getFullYear()   
                    ,'MM': M.pad2(),'M': M   
                    ,'dd': d.pad2(),'d': d   
                    ,'HH': H.pad2(),'H': H   
                    ,'mm': m.pad2(),'m': m   
                    ,'ss': s.pad2(),'s': s   
            };   
            return format.replace(/([a-zA-Z]+)/g,function (s,$1) { return n[$1]; });   
        }   
 alert(new Date().format('yyyy-MM-dd HH:mm:ss')); 

 </script>



第二种格式转换


 <script>
function formatDate(date, format) {
    if (!date) return;
    if (!format) format = "yyyy-MM-dd";
    switch(typeof date) {
        case "string":
            date = new Date(date.replace(/-/, "/"));
            break;
        case "number":
            date = new Date(date);
            break;
    } 
    if (!date instanceof Date) return;
    var dict = {
        "yyyy": date.getFullYear(),
        "M": date.getMonth() + 1,
        "d": date.getDate(),
        "H": date.getHours(),
        "m": date.getMinutes(),
        "s": date.getSeconds(),
        "MM": ("" + (date.getMonth() + 101)).substr(1),
        "dd": ("" + (date.getDate() + 100)).substr(1),
        "HH": ("" + (date.getHours() + 100)).substr(1),
        "mm": ("" + (date.getMinutes() + 100)).substr(1),
        "ss": ("" + (date.getSeconds() + 100)).substr(1)
    };    
    return format.replace(/(yyyy|MM?|dd?|HH?|ss?|mm?)/g, function() {
        return dict[arguments[0]];
    });                
}

alert(formatDate("2010-04-30", "yyyy-MM-dd HH:mm:ss"));
alert(formatDate("2010-4-29 1:50:00", "yyyy-MM-dd HH:mm:ss"));
 </script>


1 楼 zhengyutong 2010-10-28  
第一种方式比较犀利。
2 楼 qinglintan 2010-10-28