欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

js获取当前时间(昨天、今天、明天)

程序员文章站 2023-01-27 23:12:16
1、时间格式化 2、下面是具体到时分秒的获取方法 3、2017.6.27更新今天又发现了一种简单的方法:可以直接对年月日时分秒进行操作,假如今天2017-06-01 那么所得昨天为 2017-05-31 其中,format函数为扩展函数。 4、页面日期 2017-06-27 变 20170627 “ ......

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,"")。