1. 程式人生 > >JS 日期自定義格式輸出解決

JS 日期自定義格式輸出解決

 

1. Javascript中日期的格式化輸出比較複雜,  這裡採用正則表示式替換相應的格式.

2. new Date中 不是任何日期格式的字串都可以new成Date物件的, 目前僅發現"yyyy/MM/dd hh:mm:ss"及UTC格式的字串

<script type="text/javascript">

Date.prototype.format = function(format)
{
    var o =
    {
        "M+" : this.getMonth()+1, //month
        "d+" : this.getDate(),    //day
        "h+" : this.getHours(),   //hour
        "m+" : this.getMinutes(), //minute
        "s+" : this.getSeconds(), //second
        "q+" : Math.floor((this.getMonth()+3)/3),  //quarter
        "S" : this.getMilliseconds() //millisecond
    }
    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;
}

var ddd = new Date();
alert(ddd.format('yy-MM-dd hh:mm:ss'));

var a = "2007-12-25 10:00:00" ;
var d = new Date(a.replace("-","/")) ;
alert(d.format("yyyy-MM-dd"));

</script>