JS之Date对象和获取系统当前时间详解

 更新时间:2014年01月13日 09:26:10   作者:  
本篇文章主要是对JS之Date对象和获取系统当前时间进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助

一、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,'/'));

相关文章

  • 详解浏览器缓存和webpack缓存配置

    详解浏览器缓存和webpack缓存配置

    这篇文章主要介绍了浏览器缓存和webpack缓存配置,浏览器缓存分为两种类型,强缓存和协商缓存,具体内容详情大家参考下本文
    2018-07-07
  • KnockoutJS数组比较算法实例详解

    KnockoutJS数组比较算法实例详解

    这篇文章主要介绍了KnockoutJS数组比较算法实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • 你可能不知道的JSON.stringify()详解

    你可能不知道的JSON.stringify()详解

    老司机们,你知道JSON.stringify还有第二个和第三个可选参数吗?它们是什么呢?是不是感到不可思议?下面这篇文章就来给大家介绍了一些你可能不知道的JSON.stringify的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-08-08
  • UserData用法总结 lanyu出品

    UserData用法总结 lanyu出品

    前一段做音乐和链接保存项目时用到了UserData,现在上线后效果不错,就把UserData的一些用法总结出来,大家一同分享。
    2010-07-07
  • JavaScript实现单英文金山打字通

    JavaScript实现单英文金山打字通

    这篇文章主要为大家详细介绍了JavaScript实现单英文金山打字通,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • javascript算法解数独实现方案示例

    javascript算法解数独实现方案示例

    这篇文章主要为大家介绍了javascript算法解数独实现方案示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • JS判断网页广告是否被浏览器拦截过滤的代码

    JS判断网页广告是否被浏览器拦截过滤的代码

    这篇文章主要介绍了JS判断网页广告是否被浏览器拦截过滤的代码,需要的朋友可以参考下
    2015-04-04
  • js改变透明度实现轮播图的算法

    js改变透明度实现轮播图的算法

    这篇文章主要为大家详细介绍了js改变透明度实现轮播图的算法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • js中console在一行内打印字符串和对象的方法

    js中console在一行内打印字符串和对象的方法

    这篇文章主要介绍了js中console在一行内打印字符串和对象的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • 利用JavaScript实现防抖节流函数的示例代码

    利用JavaScript实现防抖节流函数的示例代码

    在开发中我们经常会遇到一些高频操作,比如:鼠标移动,滑动窗口,键盘输入等等,节流和防抖就是对此类事件进行优化,降低触发的频率,以达到提高性能的目的。本文就教大家如何实现一个让面试官拍大腿的防抖节流函数,需要的可以参考一下
    2022-08-08

最新评论