JavaScript内置的Date对象是专门用来存储日期时间的变量。
var d = new Date();
默认情况下,JavaScript中的Date对象会以如下一段字符串的形式输出:
后面会介绍Date类对象其他的各种输出形式。
先概览一下Date对象:
可用new Date()
构造器来创建Date对象,具体则有4种方式来创建Date对象:
new Date() new Date( year, month, day, hours, minutes, seconds, milliseconds ) new Date( milliseconds ) new Date( date string )
案例1 new Date()
通过new Date()来创建一个带有当前时刻的日期和时间的Date对象。
var d = new Date();
案例2 new Date( year, month, ... )
根据指定的日期时刻来创建Date对象;传入的参数按顺序依次是:年、月、日、小时、分钟、秒、毫秒。而这些参数都是可以缺省的:
当new Date()只接收1个参数时,则接收的不是年,而是毫秒,针对1970年1月1日北京时间上午8点整开始计数(用UTC时间来算,就是1970年1月1日0点0分0秒)。
但是要注意的是:一月到十二月份是由0~11来代表的,0代表一月份,11代表十二月份。
var d1 = new Date(2099, 0, 1, 10, 24, 16, 0); var d2 = new Date(2099, 0, 1, 10, 24, 16); var d3 = new Date(2099, 0, 1, 10, 24); var d4 = new Date(2099, 0, 1, 10); var d5 = new Date(2099, 0, 1); var d6 = new Date(2099, 0); var d7 = new Date(2099); // 不是年,而是毫秒
当代表年的参数是1位数或2位数时,则自动代表19XX,跟自动被加上1900没啥两样。一般来说不会触发,但是还是知道Date构造器的这种特性为佳。
var d1 = new Date(97, 6, 1); // 代表1997年7月1日 var d2 = new Date(1, 0, 1); // 代表1901年1月1日
new Date(dateString)可通过一个符合date规则的字符串来创建新的Date对象。
var d = new Date("October 1, 2018 11:11:11");
Date对象的输出,常用如下三种方式:
toString()方法(输出时默认自动使用此方法)
toString()方法(等价于默认下直接赋值对象本身)可输出结果类似Tue Dec 11 2018 18:42:37 GMT+0800 (中国标准时间)
这种方式:
d = new Date(); document.getElementById("demo").innerHTML = d.toString();
toUTCString()方法
toUTCString()方法可输出结果类似Tue, 11 Dec 2018 10:48:15 GMT
这种方式:
d = new Date(); document.getElementById("demo").innerHTML = d.toUTCString();
toDateString()方法
toDateString()方法可输出结果类似Tue Dec 11 2018
这种方式:
d = new Date(); document.getElementById("demo").innerHTML = d.toDateString();
Date对象提供了一系列方法来调用此对象中蕴含的时间信息。(点击下方即可运行测试)
若使用UTC日期与时间,在get和具体的后缀词之间加上UTC即可,常用的方法有:getUTCDate()、getUTCDay()、getUTCFullYear()、getUTCHours()、getUTCMilliseconds()、getUTCMinutes()、getUTCMonth()、getUTCSeconds()。
Date对象也提供了不少方法来设置修改日期时间的部分信息。(点击下方即可运行测试)
若使用UTC日期与时间,在set和具体的后缀词之间加上UTC即可,常用的方法有:setUTCDate()、setUTCDay()、setUTCFullYear()、setUTCHours()、setUTCMilliseconds()、setUTCMinutes()、setUTCMonth()、setUTCSeconds()。
三种常用的Date格式如下:
类型 Type | 示例 | 专否沙盒 |
---|---|---|
ISO Date | "2099-04-19"(这可是国际标准,强烈推荐) | 运行一下 |
Short Date | "04/19/2099" | 运行一下 |
Long Date | "April 19 2099" 或 "19 April 2099" | 运行一下 |