1. 程式人生 > >js日期格式化的使用

js日期格式化的使用

js的日期格式化獲取當前時間

jS與Java和Oracle的日期格式不匹配,js生成的日期月份前格式化帶0。

方式一、

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 dt= new Date(data); 

return dt.format("yyyy-MM-dd hh:mm:ss");

方式二:yyyy-MM-dd hh:mm:ss

	Date.prototype.format = function(fmt) { 
	    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(fmt)) {
	           fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); 
	   }
	    for(var k in o) {
	       if(new RegExp("("+ k +")").test(fmt)){
	            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
	        }
	    }
	   return fmt; 
	}  

	var time = new Date().format("yyyy-MM-dd hh:mm:ss");

	$("#trbrqs").val(time);

	$('#trbrqs').attr("readonly","readonly");

方式三:yyyyMMdd

		function getNowFormatDate() 
        { 
           var day = new Date(); 
           var Year = 0; 
           var Month = 0; 
           var Day = 0; 
           var CurrentDate = ""; 
           Year       = day.getFullYear();//ie火狐下都可以 
           Month      = day.getMonth()+1; 
           Day        = day.getDate(); 
           CurrentDate += Year + ""; 
           if (Month >= 10 ) 
           { 
            CurrentDate += Month + ""; 
           } 
           else
           { 
            CurrentDate += "0" + Month + ""; 
           } 
           if (Day >= 10 ) 
           { 
            CurrentDate += Day ; 
           } 
           else
           { 
            CurrentDate += "0" + Day ; 
           } 

           return CurrentDate; 
        } 

      var namesalt = getNowFormatDate();

在javascript中日期也是他的內建物件,所以我們要對日期進行獲取和操作,必須例項化物件。

1.建立日期物件
  var dateobj=new Date();
  將會包含本地時間的資訊,包括年月日時分秒 星期 

  注意:月份和星期都是從0開始計算的

2.獲取日期方法

Date() 返回當日的日期和時間。 
getDate() 從 Date 物件返回一個月中的某一天 (1 ~ 31)。 
getDay() 從 Date 物件返回一週中的某一天 (0 ~ 6)。
getMonth() 從 Date 物件返回月份 (0 ~ 11)。 
getFullYear() 從 Date 物件以四位數字返回年份。
getYear() 請使用 getFullYear() 方法代替。
getHours() 返回 Date 物件的小時 (0 ~ 23)。
getMinutes() 返回 Date 物件的分鐘 (0 ~ 59)。
getSeconds() 返回 Date 物件的秒數 (0 ~ 59)。
getMilliseconds() 返回 Date 物件的毫秒(0 ~ 999)。
getTime() 返回 1970 年 1 月 1 日至今的毫秒數。
getTimezoneOffset() 返回本地時間與格林威治標準時間 (GMT) 的分鐘差。 

3.設定日期的方法

setDate() 設定 Date 物件中月的某一天 (1 ~ 31)。
setMonth() 設定 Date 物件中月份 (0 ~ 11)。
setFullYear() 設定 Date 物件中的年份(四位數字)。 
setYear() 請使用 setFullYear() 方法代替。 
setHours() 設定 Date 物件中的小時 (0 ~ 23)。 
setMinutes() 設定 Date 物件中的分鐘 (0 ~ 59)。
setSeconds() 設定 Date 物件中的秒鐘 (0 ~ 59)。 
setMilliseconds() 設定 Date 物件中的毫秒 (0 ~ 999)。 
setTime() 以毫秒設定 Date 物件。
setUTCDate() 根據世界時設定 Date 物件中月份的一天 (1 ~ 31)。 
setUTCMonth() 根據世界時設定 Date 物件中的月份 (0 ~ 11)。 
setUTCFullYear() 根據世界時設定 Date 物件中的年份(四位數字)。 
setUTCHours() 根據世界時設定 Date 物件中的小時 (0 ~ 23)。
setUTCMinutes() 根據世界時設定 Date 物件中的分鐘 (0 ~ 59)。
setUTCSeconds() 根據世界時設定 Date 物件中的秒鐘 (0 ~ 59)。 
setUTCMilliseconds() 根據世界時設定 Date 物件中的毫秒 (0 ~ 999)。 
<script type="text/javascript">
	var date=new Date();
	document.write(date.getTime()+"<br/>");
	document.write(date.getFullYear()+"<br/>");
	document.write((date.getMonth()+1)+"<br/>");
	document.write(date.getDate()+"<br/>");
	var today=date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日";
	document.write(today+"<br/>");
	document.write(date.getHours()+"<br/>");
	document.write(date.getMinutes()+"<br/>");
	document.write(date.getSeconds()+"<br/>");
	today=date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日  "+date.getHours()+":"+date.getMinutes()+":"+date.getSeconds();
	document.write(today+"<br/>");
	var day=date.getDay();
	var week;
	switch(day){
	case 0:week="星期日";break;
	case 1:week="星期一";break;
	case 2:week="星期二";break;
	case 3:week="星期三";break;
	case 4:week="星期四";break;
	case 5:week="星期五";break;
	case 6:week="星期六";break;
	}
	document.write(week+"<br/>");
	today=date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日  "+week+" "+date.getHours()+":"+date.getMinutes()+":"+date.getSeconds();
	document.write(today+"<br/>");
</script>

js計算當月的第一天與最後一天

$(function() {
     var nowdays = new Date();  
     var year = nowdays.getFullYear();
     var month = nowdays.getMonth()+1;
     if(month==0)
     {
         month=12;
         year=year-1;
     }
     if (month < 10) {
         month = "0" + month;
     }
     
     var firstDay = year + "-" + month + "-" + "01";
     var myDate = new Date(year, month, 0);
     var lastDay = year + "-" + month + "-" + myDate.getDate();
 
     var start = $("#ks").val(firstDay)
     var end = $("#js").val(lastDay);

  ));  

倒計時顯示時間

function getcha (now,end) {
   var arr=[];
	var cha=(end.getTime()-now.getTime())/1000;
	var days=parseInt(cha/(60*60*24));
	arr.push(days)
		cha%=(60*60*24);
	var hours=parseInt(cha/(60*60));
	arr.push(hours)
		cha%=60*60;
	var mints=parseInt(cha/60);
	arr.push(mints)
	var sends=cha%60;
	arr.push(sends)

	return arr;
	}

window.onload=function  () {
 var spans=document.getElementsByTagName("span");
    var end=new Date();
    end.setFullYear(2012);
	end.setMonth(7);
	end.setDate(12);
	end.setHours(12);
	end.setMinutes(0);
	end.setSeconds(0);
   var now=new Date();
     for (var i=0; i<getcha (now,end).length; i++) {
	   spans[i].innerHTML=getcha (now,end)[i]
     } 

  

   setInterval(function  () {
     var now=new Date();
     for (var i=0; i<getcha (now,end).length; i++) {
	   spans[i].innerHTML=getcha (now,end)[i]
     } 
   },1000)
}

<div>
距離奧運會還有<span></span>天<span></span>小時<span></span>分鐘<span></span>秒
</div>