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

js将long日期格式转换为标准日期格式

js将long日期格式转换为标准日期格式

<script language="javascript">      
    //扩展Date的format方法    
    Date.prototype.format = function (format) {   
        var o = {   
            "M+": this.getMonth() + 1,   
            "d+": this.getDate(),   
            "h+": this.getHours(),   
            "m+": this.getMinutes(),   
            "s+": this.getSeconds(),   
            "q+": Math.floor((this.getMonth() + 3) / 3),   
            "S": this.getMilliseconds()   
        }   
        if (/(y+)/.test(format)) {   
            format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));   
        }   
        for (var k in o) {   
            if (new RegExp("(" + k + ")").test(format)) {   
                format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));   
            }   
        }   
        return format;   
    }   
    /**    
    *转换日期对象为日期字符串    
    * @param date 日期对象    
    * @param isFull 是否为完整的日期数据,    
    *               为true时, 格式如"2000-03-05 01:05:04"    
    *               为false时, 格式如 "2000-03-05"    
    * @return 符合要求的日期字符串    
    */     
    function getSmpFormatDate(date, isFull) {   
        var pattern = "";   
        if (isFull == true || isFull == undefined) {   
            pattern = "yyyy-MM-dd hh:mm:ss";   
        } else {   
            pattern = "yyyy-MM-dd";   
        }   
        return getFormatDate(date, pattern);   
    }   
    /**    
    *转换当前日期对象为日期字符串    
    * @param date 日期对象    
    * @param isFull 是否为完整的日期数据,    
    *               为true时, 格式如"2000-03-05 01:05:04"    
    *               为false时, 格式如 "2000-03-05"    
    * @return 符合要求的日期字符串    
    */     
  
    function getSmpFormatNowDate(isFull) {   
        return getSmpFormatDate(new Date(), isFull);   
    }   
    /**    
    *转换long值为日期字符串    
    * @param l long值    
    * @param isFull 是否为完整的日期数据,    
    *               为true时, 格式如"2000-03-05 01:05:04"    
    *               为false时, 格式如 "2000-03-05"    
    * @return 符合要求的日期字符串    
    */     
  
    function getSmpFormatDateByLong(l, isFull) {   
        return getSmpFormatDate(new Date(l), isFull);   
    }   
    /**    
    *转换long值为日期字符串    
    * @param l long值    
    * @param pattern 格式字符串,例如:yyyy-MM-dd hh:mm:ss    
    * @return 符合要求的日期字符串    
    */     
  
    function getFormatDateByLong(l, pattern) {   
        return getFormatDate(new Date(l), pattern);   
    }   
    /**    
    *转换日期对象为日期字符串    
    * @param l long值    
    * @param pattern 格式字符串,例如:yyyy-MM-dd hh:mm:ss    
    * @return 符合要求的日期字符串    
    */     
    function getFormatDate(date, pattern) {   
        if (date == undefined) {   
            date = new Date();   
        }   
        if (pattern == undefined) {   
            pattern = "yyyy-MM-dd hh:mm:ss";   
        }   
        return date.format(pattern);   
    }   
    
    //alert(getSmpFormatDate(new Date(1279849429000), true));   
    //alert(getSmpFormatDate(new Date(1279849429000),false));       
    //alert(getSmpFormatDateByLong(1279829423000, true));   
    alert(getSmpFormatDateByLong(1279829423000,false));       
    //alert(getFormatDateByLong(1279829423000, "yyyy-MM"));   
    //alert(getFormatDate(new Date(1279829423000), "yy-MM"));   
    //alert(getFormatDateByLong(1279849429000, "yyyy-MM hh:mm"));        
</script>  


本文出自  yaohucaizi  博客,谢绝转载!