打卡时间:13:30
Date类型
UTC(Coordinated Universal Time,国际协调时间)1970年1月1日午夜(零时)开始经过的毫秒数来保存日期。
Date类型保存的日期能够精确到1970年1月1日之前或之后的285 616年。
创建一个日期对象,使用new操作符和Date构造函数即可:
var new = new Date( ) ;
在调用Date构造函数而不传递参数的情况下,新创建的对象自动获得当前日期和时间。如果想根据特定的日期和时间创建日期对象,必须传入表示该日期的毫秒数(即从UTC时间1970年1月1日午夜起至该日期止经过的毫秒数)。为了简化这计算过程,ECMAScript提供了两个方法:Date.parse( )和Date.UTC( )。
Date.parse()方法接受一个表示日期的字符串参数,然后尝试根据这个字符串返回相应日期的毫秒数。ECMA-262没有定义Date.parse()应该支持哪种日期格式,因此这个方法的行为因实现而异,而且通常是因地区而异。
例如,要为2008年5月22日创建一个日期对象,可以使用下面的代码:
var someDate = new Date(Date.parse("May 25,2004"));
如果传入Date.parse( )方法的字符串不能表示日期,那么它会返回NaN。如果直接将表示提起的字符串传递给Date构造函数,也会在后台调用Date.parse( )。
Date.UTC( )方法同样也返回表示日期的毫秒数,但它与Date.parse( )在构建值时使用不同的信息。Date.UTC( )的参数分别是年份、基于0的月份(一月是0.以此类推),月中的哪一天(1—31)、小时数(0—23)、分钟、秒以及毫秒数。这些参数中,只有年和月是必须的。如果没有月天数,则假设为1天,如果省略其他参数,则统统假设为0。例:
//GMT时间2000年1月1日午夜零时
var y2k = new Date(Date.UTC(2000,0));
//GMT时间2005年5月5日下午 5:55:55
var allFives = new Date(Date.UTC(2005,4,5,17,55,55));
//月份是基于0开始的