简介
Date类型使用自 UTC(Coordinated Universal Time,国际协调时间)1970 年 1 月 1 日午夜(零时)开始经过的毫秒数来保存日期。在使用这种数据存储格式的条件下,Date 类型保存的日期能够精确到 1970 年 1月 1 日之前或之后的 285 616 年。
创建
使用 new 操作符和 Date 构造函数
示例
var now = new Date();
使用
-
不传参:不传递参数的情况下自动获得当前日期和时间
-
传参:如果想根据特定的日期和时间创建日期对象,必须传入表示该日期的毫秒数(即从 UTC 时间 1970 年 1 月 1 日午夜起至该日期止经过的毫秒数)。为了简化计算过程,ECMAScript 提供了两个方法:Date.parse()和 Date.UTC()。
Date.parse()方法
接收一个表示日期的字符串参数,然后尝试根据这个字符串返回相应日
期的毫秒数。这个方法的行为因实现而异,而且通常是因地区而异。如果传入 Date.parse()方法的字符串不能表示日期,那么它会返回 NaN,如果直接将表
示日期的字符串传递给 Date 构造函数,也会在后台调用 Date.parse()。
Date.UTC()方法
Date.UTC()的参数分别是年份、基于 0 的月份(一月是 0,二月是 1,以此类推)、月中的哪一天 (1 到 31)、小时数(0 到 23)、分钟、秒以及毫秒数,在这些参数中,只有前两个参数(年和月)是必需的。如果没有提供月中的天数,则假设天数为 1;如果省略其他参数,则统统假设为 0
继承的方法
Date 类型的 toLocaleString()方法会按照与浏览器设置的地区相适应的格式返回日期和时间。 这大致意味着时间格式中会包含 AM 或 PM,但不会包含时区信息(当然,具体的格式会因浏览器而异)。而 toString()方法则通常返回带有时区信息的日期和时间,其中时间一般以军用时间(即小时的范围是 0 到 23)表示。
日期格式化方法
Date 类型还有一些专门用于将日期格式化为字符串的方法,这些方法如下。
toDateString()——以特定于实现的格式显示星期几、月、日和年;
toTimeString()——以特定于实现的格式显示时、分、秒和时区;
toLocaleDateString()——以特定于地区的格式显示星期几、月、日和年;
toLocaleTimeString()——以特定于实现的格式显示时、分、秒;
toUTCString()——以特定于实现的格式完整的 UTC 日期。
与 toLocaleString()和 toString()方法一样
以上这些字符串格式方法的输出也是因浏览器而异的,因此没有哪一个方法能够用来在用户界面中显示一致的日期信息。