视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
JS之Date对象和获取系统当前时间详解_javascript技巧
2020-11-27 21:18:31 责编:小采
文档


一、Date对象
每天一对象,今天来看看Date对象,相对于时间大家一定很熟悉,应为以前在网站中很多地方都会遇到这样的时间特效。温故而知新,今天我们来回忆一下Date对象。

我们首先来看看他的定义:
dateObj = new Date()
dateObj = new Date(dateVal)
dateObj = new Date(year, month, date[, hours[, minutes[, seconds[,ms]]]])

必选项。如果是数字值,dateVal 表示指定日期与 1970 年 1 月 1 日午夜间全球标准时间的毫秒数。如果是字符串,则 dateVal 按照 parse 方法中的规则进行解析。dateVal 参数也可以是从某些 ActiveX® 对象返回的 VT_DATE 值。 必选项。完整的年份,比如,1976(而不是 76)。 必选项。表示的月份,是从 0 到 11 之间的整数( 1 月至 12 月)。 必选项。表示日期,是从 1 到 31 之间的整数。 可选项。表示毫秒,是从 0 到 999 的整数。
Date 对象保存以毫秒为单位表示特定时间段。如果某个参数的值大于其范围或为负数,则存储的其他值将做相应的调整。例如,如果指定 150 秒,JScript 将该数字重新定义为 2 分 30 秒。

如果数字为 NaN,则该对象不代表特定的时间段。如果未向 Date 对象传递参数,它将被初始化为当前时间 (UTC)。在能够使用该对象前必须为其赋值。

Date 对象能够表示的日期范围约等于 1970 年 1 月 1 日前后各 285,616 年。

Date 对象具有两个不创建 Date 对象就可以调用的静态方法。它们是 parse 和 UTC。

Date对象的方法很多,也很简单在这里就不列出了,OK,See Next!

特别注意:

**************************************************************

var myDate = new Date(2006,11,23);
alert("year="+myDate.getYear()+"******month="+myDate.getMonth()+"********day="+myDate.getDate());

运行之后的结果是 year=2006 ******month=11********day=23

**************************************************************

这样显示都很正常,当new Date的时候传进去的月份为12的时候,就出现的问题。

**************************************************************

var myDate = new Date(2006,12,23);
alert("year="+myDate.getYear()+"******month="+myDate.getMonth()+"********day="+myDate.getDate());

运行之后的结果是 year=2007 ******month=0********day=23

**************************************************************

很纳闷的一件事情。最后查资料得知month这个参数的值是0~11的,不能传入12的这个值。解决办法就是在传值的时候把month-1,然后在外面取的时候再+1。不知谁还有更好的办法。

如:

var date=new Date(2010,0-1,15); //这里0代表一月份,减1就变成12月份了
alert(date.getYear()+","+(date.getMonth()+1)+","+date.getDate());

var date=new Date(2010,12-1,15);
alert(date.getYear()+","+(date.getMonth()+1)+","+date.getDate());

参数是字符串的格式如:2010/1/6

示例:
var txtDepartureDate='2010-1-6'
alert(txtDepartureDate.replace(/-/g,'/')); //使用正则将'-'全部替换成/
var date = new Date(txtDepartureDate.replace(/-/g,'/'));

下载本文
显示全文
专题