1. 程式人生 > >js獲取當前時間(昨天、今天、明天)

js獲取當前時間(昨天、今天、明天)

1、時間格式化

 1 //昨天的時間
 2 var day1 = new Date();
 3 day1.setTime(day1.getTime()-24*60*60*1000);
 4 var s1 = day1.getFullYear()+"-" + (day1.getMonth()+1) + "-" + day1.getDate();
 5 //今天的時間
 6 var day2 = new Date();
 7 day2.setTime(day2.getTime());
 8 var s2 = day2.getFullYear()+"-" + (day2.getMonth()+1) + "-" + day2.getDate();
9 //明天的時間 10 var day3 = new Date(); 11 day3.setTime(day3.getTime()+24*60*60*1000); 12 var s3 = day3.getFullYear()+"-" + (day3.getMonth()+1) + "-" + day3.getDate(); 13 //拼接時間 14 function show(){ 15 var str = "" + s1 + "至" + s2; 16 return str; 17 } 18 //賦值doubleDate 19 $('#dateS').val(show());

2、下面是具體到時分秒的獲取方法

 1 function writeCurrentDate() {
 2         var now = new Date();
 3         var year = now.getFullYear(); //得到年份
 4         var month = now.getMonth();//得到月份
 5         var date = now.getDate();//得到日期
 6         var day = now.getDay();//得到周幾
 7         var hour = now.getHours();//得到小時
 8         var minu = now.getMinutes();//
得到分鐘 9 var sec = now.getSeconds();//得到秒 10    var MS = now.getMilliseconds();//獲取毫秒 11 var week; 12 month = month + 1; 13 if (month < 10) month = "0" + month; 14 if (date < 10) date = "0" + date; 15 if (hour < 10) hour = "0" + hour; 16 if (minu < 10) minu = "0" + minu; 17 if (sec < 10) sec = "0" + sec; 18 if (MS < 100)MS = "0" + MS; 19 var arr_week = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"); 20 week = arr_week[day]; 21 var time = ""; 22 time = year + "年" + month + "月" + date + "日" + " " + hour + ":" + minu + ":" + sec + " " + week; 23 //當前日期賦值給當前日期輸入框中(jQuery easyUI) 24 $("#currentDate").html(time); 25 //設定得到當前日期的函式的執行間隔時間,每1000毫秒重新整理一次。 26 var timer = setTimeout("writeCurrentDate()", 1000); 27 }

3、2017.6.27更新
今天又發現了一種簡單的方法:可以直接對年月日時分秒進行操作,假如今天2017-06-01 那麼所得昨天為 2017-05-31

1 //昨天的時間 
2  var day1 = new Date();
3  day1.setDate(day1.getDate() - 1);
4  var s1 = day1.format("yyyy-MM-dd");
5  //前天的時間
6  var day2 = new Date();
7  day2.setDate(day2.getDate() - 2);
8  var s2 = day2.format("yyyy-MM-dd");

其中,format函式為擴充套件函式。

 1 /**
 2  *對Date的擴充套件,將 Date 轉化為指定格式的String
 3  *月(M)、日(d)、小時(h)、分(m)、秒(s)、季度(q) 可以用 1-2 個佔位符,
 4  *年(y)可以用 1-4 個佔位符,毫秒(S)只能用 1 個佔位符(是 1-3 位的數字)
 5  *例子:
 6  *(new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
 7  *(new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18
 8  */
 9 Date.prototype.format = function (fmt) {
10     var o = {
11         "M+": this.getMonth() + 1, //月份
12         "d+": this.getDate(), //
13         "h+": this.getHours(), //小時
14         "m+": this.getMinutes(), //
15         "s+": this.getSeconds(), //
16         "q+": Math.floor((this.getMonth() + 3) / 3), //季度
17         "S": this.getMilliseconds() //毫秒
18     };
19     if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
20     for (var k in o)
21         if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
22     return fmt;
23 }

4、頁面日期 2017-06-27 變 20170627      “2017-06-27”.replace(/-/g,"")。