js實現日期顯示的一些操作


1、js獲取當前日期(yyyy-mm-dd)

以下代碼是獲取到的當前日期:

1 var myDate = new Date();    
2 var year = myDate.getFullYear();    //獲取完整的年份(4位,1970-????)
3 var month = myDate.getMonth()+1;       //獲取當前月份(1-12)
4 var day = myDate.getDate();        //獲取當前日(1-31)
5 //獲取完整年月日
6 var newDay = year + “-” + month + “-” + day;

2、點擊實現日期的天數加減(yyyy-mm-dd)

點擊倆個按鈕分別可以實現日期的加減,如果本月天數達到最多,那么月份將會自動增加或減少

 1 var n = 0;
 2 dayChange(0)
 3 $("#time-add").click(function(){
 4    n++;
 5    dayChange(n);
 6 })
 7 $("#time-less").click(function(){
 8    n--;
 9    dayChange(n);
10 })
11 function dayChange(n){
12    var now = new Date();//今天
13    var tomo = new Date((now/1000+86400*n)*1000);//明天
14    var month = tomo.getMonth() + 1;
15    var strDate = tomo.getDate();  
16    var seperator1 = "-";
17    if (month >= 1 && month <= 9) {
18        month = "0" + month;
19    }
20    if (strDate >= 0 && strDate <= 9) {
21        strDate = "0" + strDate;
22    }
23     var currentdate = tomo.getFullYear() + seperator1 + month + seperator1 + strDate;
24     $(".center-day").html(currentdate);
25 }

3、獲取當前本周周一和本周周日的時間范圍

不管當前是周幾,都可以獲取到當前所在這一周的起始時間

 1   var now = new Date();//今天
 2   week(now);  
 3   function week(now){
 4     var nowTime = now.getTime() ; 
 5     var day = now.getDay();
 6     var oneDayLong = 24*60*60*1000 ; 
 7  //獲取本周所在周一
 8     var MondayTime = nowTime - (day-1)*oneDayLong  ; 
 9  //獲取本周所在周末                    
10    var SundayTime =  nowTime + (7-day)*oneDayLong ; 
11  //轉化日期
12   var monday = new Date(MondayTime);
13   var sunday = new Date(SundayTime);
14   var month = monday.getMonth() + 1;
15   var strDate = monday.getDate();
16   var month1 = sunday.getMonth() + 1;
17   var strDate1 = sunday.getDate();
18   if (month >= 1 && month <= 9) {
19       month = "0" + month;
20   }
21   if (month1 >= 1 && month1 <= 9) {
22       month1 = "0" + month1;
23   }
24   if (strDate >= 0 && strDate <= 9) {
25       strDate = "0" + strDate;
26   }
27   if (strDate1 >= 0 && strDate1 <= 9) {
28       strDate1 = "0" + strDate1;
29   }
30   currentdate = monday.getFullYear() + seperator1 + month + seperator1 + strDate + "至" + sunday.getFullYear() + seperator1 + month1 + seperator1 + strDate1;
31   $(".center-day").html(currentdate);
32}   

4、點擊實現每周范圍的變化

點擊改變的按鈕將會改變顯示一周范圍的改變,如果有的在下一月或者下一年,那么將會自動顯示,不會出現錯誤

 1 var now = new Date();//今天
 2 var n = 0;
 3 week(now);  
 4 $("#week-add").click(function(){
 5     n++;
 6     var date = new Date(now.getTime() + n*7*24*3600*1000);
 7     week(date);
 8 })
 9 $("#week-add").click(function(){
10     n--;
11     var date = new Date(now.getTime() + n*7*24*3600*1000);
12     week(date);
13 })
14 function week(now){
15   var nowTime = now.getTime() ; 
16   var day = now.getDay();
17   var oneDayLong = 24*60*60*1000 ; 
18 //獲取本周所在周一
19   var MondayTime = nowTime - (day-1)*oneDayLong  ; 
20 //獲取本周所在周末                    
21   var SundayTime =  nowTime + (7-day)*oneDayLong ; 
22//轉化日期
23   var monday = new Date(MondayTime);
24   var sunday = new Date(SundayTime);
25   var month = monday.getMonth() + 1;
26   var strDate = monday.getDate();
27   var month1 = sunday.getMonth() + 1;
28   var strDate1 = sunday.getDate();
29   if (month >= 1 && month <= 9) {
30       month = "0" + month;
31   }
32   if (month1 >= 1 && month1 <= 9) {
33       month1 = "0" + month1;
34   }
35   if (strDate >= 0 && strDate <= 9) {
36      strDate = "0" + strDate;
37   }
38   if (strDate1 >= 0 && strDate1 <= 9) {
39      strDate1 = "0" + strDate1;
40   }
41   currentdate = monday.getFullYear() + seperator1 + month + seperator1 + strDate + "至" + sunday.getFullYear() + seperator1 + month1 + seperator1 + strDate1;
42   $(".center-day").html(currentdate);
43 }       

5、獲取當前月份的第一天和最后一天

能夠獲取到當前所在月份的第一天和最后一天,最后一天的日期是不固定的,能夠獲取到應有的日期

 1 monthfen(0)
 2 function monthfen(n){
 3   var now = new Date();//今天
 4   var firstDate = new Date((now/1000+86400*n*now.getDate())*1000);//明天
 5  //本月第一天
 6   firstDate.setDate(1); //第一天
 7   var date = new Date(firstDate);
 8   var month = date.getMonth() + 1;
 9   var strDate = "0" + date.getDate();
10  //本月最后一天
11   var endDate = new Date(firstDate);
12   endDate.setMonth(firstDate.getMonth()+1);
13   endDate.setDate(0);
14   var date1 = new Date(endDate);
15   var month1 = date1.getMonth() + 1;
16   var strDate1 = date1.getDate();
17   if (month >= 1 && month <= 9) {
18     month = "0" + month;
19   }
20   if (month1 >= 1 && month1 <= 9) {
21     month1 = "0" + month1;
22   }
23   currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + "至" + date1.getFullYear() + seperator1 + month1 + seperator1 + strDate1;
24   $(".center-day").html(currentdate);
25 }

6、點擊實現當前月份的改變

點擊按鈕會實現當前月份的改變,那么最后一天的日期也會自動改變,

 1 monthfen(0)
 2 var n = 0;
 3 $("#month-add").click(function(){
 4     n++;
 5     monthfen(n);
 6 })
 7 $("#month-less").click(function(){
 8     n--;
 9     monthfen(n);
10 })
11 function monthfen(n){
12   var now = new Date();//今天
13   var firstDate = new Date((now/1000+86400*n*now.getDate())*1000);//明天
14 //本月第一天
15   firstDate.setDate(1); //第一天
16   var date = new Date(firstDate);
17   var month = date.getMonth() + 1;
18   var strDate = "0" + date.getDate();
19 //本月最后一天
20   var endDate = new Date(firstDate);
21   endDate.setMonth(firstDate.getMonth()+1);
22   endDate.setDate(0);
23   var date1 = new Date(endDate);
24   var month1 = date1.getMonth() + 1;
25   var strDate1 = date1.getDate();
26   if (month >= 1 && month <= 9) {
27     month = "0" + month;
28   }
29   if (month1 >= 1 && month1 <= 9) {
30     month1 = "0" + month1;
31   }
32   currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + "至" + date1.getFullYear() + seperator1 + month1 + seperator1 + strDate1;
33   $(".center-day").html(currentdate);
34 }

當然還有很多關於日期格式的改變和算法,如果有什么不理解的可以留下評論,大家一起探討。




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM