Date 对象用于处理日期与时间。

new Date()创建一个Date对象

以下四种方法同样可以创建 Date 对象:

var d = new Date();
var d = new Date(milliseconds);
var d = new Date(dateString);
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);

Date 对象属性

constructor

返回对创建此对象的 Date 函数的引用。
constructor 属性返回对创建此对象的 Date 函数的引用。
实例,返回创建Date对象的函数原型::

var d = new Date();
var x=document.getElementById("demo");
x.innerHTML=d.constructor;
//结果:function Date() { [native code] }

prototype

使您有能力向对象添加属性和方法。
定义和用法
prototype 属性使您有能力向对象添加属性和方法。
当构造一个原型,所有的日期对象都会默认添加属性和方法。
注意: 可将属性和方法添加到原型中,但不能为对象分配其他原型。 但是,可以向用户定义的对象分配新的原型。
注意: Prototype是一个全局属性,这对于几乎全部的JavaScript对象。
实例:

Date.prototype.mm=function(){
    if(this.getMonth()==0)
    {
        console.log("一月")
    }
    else
    {
        console.log("不是一月")
    }
}
var d=new Date();
d.mm();

Date 对象方法

getDate()

返回一个月中的某一个天(1~31)

从 Date 对象返回一个月中的某一天 (1 ~ 31)。
可返回月份的某一天。
语法:
Date.getDate()
参数:
Number dateObject 所指的月份中的某一天,使用本地时间。返回值是 1 ~ 31 之间的一个整数。
实例,获取今天是几号?

var d=new Date();
console.log(d.getDate());//结果为1,今天是3月1日

实例,给定一个日期,获取当前日期是多少号?

var d=new Date("July 21, 1983 01:12:00");
console.log(d.getDate());//结果为21

getDay()

返回一周中的某一天(0~6)

从 Date 对象返回一周中的某一天 (0 ~ 6)。
getDay() 方法可返回一周(0~6)的某一天的数字。
注意: 星期天为 0, 星期一为 1, 以此类推。
注:星期一为1,星期二为2,星期三为3,星期四为4,星期五为5,星期六为6,星期日为0

语法
Date.getDay()
参数说明:
Number 返回值是 0(周日) 到 6(周六) 之间的一个整数。

var d=new Date();//实例化一个日期对象
var weekday=new Array(7);//定义一个数组,把一周放入该数组中
weekday[0]="周日";
weekday[1]="周一";
weekday[2]="周二";
weekday[3]="周三";
weekday[4]="周四";
weekday[5]="周五";
weekday[6]="周六";
console.log(weekday[d.getDay()]);

getFullYear()

返回四位数的年份

从 Date 对象以四位数字返回年份。
getFullYear() 方法可返回一个表示年份的 4 位数字。
语法:
Date.getFullYear()
参数:
Number 表示年份的 4 位数字。
实例:

var d=new Date();//实例化一个日期对象
console.log(d.getFullYear());//2019,获取当前年份

var m=new Date("July 21, 1982 01:09:00");
console.log(m.getFullYear());//1982

getHours()

返回小时(0~23)

返回 Date 对象的小时 (0 ~ 23)。
getHours() 方法可返回时间的小时字段。
语法:
Date.getHours()
返回值:
Number 返回值是 0 (午夜) 到 23 (晚上 11 点)之间的一个整数。
实例:

var d=new Date();//实例化一个日期对象
console.log(d.getHours());//14,获取当前的小时

var m=new Date("July 21,1988 01:09:00");
console.log(m.getHours());//1

getMilliseconds()

返回毫秒(0~999)

返回 Date 对象的毫秒(0 ~ 999)。
可返回时间的毫秒。
语法:
Date.getMilliseconds()
参数说明:
Number 返回值是 0 ~ 999 之间的一个整数,该数字代表毫秒数。

var d=new Date();//实例化一个日期对象
console.log(d.getMilliseconds());//728,获取当前的毫秒数

var m = new Date("July 21, 1983 01:15:00:526");
var n = m.getMilliseconds();//526

getMinutes()

返回分钟(0~59)

返回 Date 对象的分钟 (0 ~ 59)。
返回时间的分钟字段。
语法:
ate.getMinutes()
返回值:
Number date Object 的分钟字段,以本地时间显示。返回值是 0 ~ 59 之间的一个整数。
实例:

var d=new Date();
console.log(d.getMinutes());//46,获取当前的分钟

var d = new Date("July 21, 1983 01:15:00");
var n = d.getMinutes();//15

getMonth()

返回月份(0~11)

从 Date 对象返回月份 (0 ~ 11)。
返回表示月份的数字。返回值是 0(一月) 到 11(十二月) 之间的一个整数。
注意: 一月为 0, 二月为 1, 以此类推。
语法:
Date.getMonth()
返回值:
Number 返回值是 0(一月) 到 11(十二月) 之间的一个整数。
实例,获取当前的月份:

var d=new Date();
var myMonth=new Array();
myMonth[0]="一月";
myMonth[1]="二月";
myMonth[2]="三月";
myMonth[3]="四月";
myMonth[4]="五月";
myMonth[5]="六月";
myMonth[6]="七月";
myMonth[7]="八月";
myMonth[8]="九月";
myMonth[9]="十月";
myMonth[10]="十一月";
myMonth[11]="十二月";
console.log(myMonth[d.getMonth()]);//三月

默认输出的是0~11

var d=new Date();
console.log(d.getMonth());//2

getSeconds()

返回时间的秒(0~59)

getSeconds() 方法可返回时间的秒。返回值是 0 ~ 59 之间的一个整数。
语法:
Date.getSeconds()
参数:
Number 返回值是 0 ~ 59 之间的一个整数。
实例:

var d=new Date();
console.log(d.getSeconds());//56,输出当前的秒数

getTime()

返回 1970 年 1 月 1 日至今的毫秒数。
可返回距 1970 年 1 月 1 日之间的毫秒数。
语法:
Date.getTime()
返回值:
Number 指定的日期和时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数。

实例1,获取1970年1月1日至现在的毫秒数:

var d=new Date();
console.log(d.getTime());//1551423262812

实例2,计算从1970/01/01至今有多少年

var minutes=1000*60;
var hours=minutes*60;
var days=hours*24;
var years=days*365;
var d=new Date();
var t=d.getTime();
console.log(Math.round(t/years));//49

getTimezoneOffset()

返回本地时间与格林威治标准时间 (GMT) 的分钟差。
getTimezoneOffset() 方法可返回格林威治时间和本地时间之间的时差,以分钟为单位。
例如,如果时区为 GMT+2, 将返回-120 。
注意: 由于使用夏令时的惯例,该方法的返回值不是一个常量。
提示: 协调世界时,又称世界统一时间,世界标准时间,国际协调时间,简称UTC(Universal Coordinated Time)。
注意: UTC 时间即是 GMT(格林尼治) 时间。

实例,返回格林威治时间和本地时间之间的时差(分钟作为单位):

var d=new Date();
console.log(d.getTimezoneOffset());//-480

getUTCDate()

根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。
getUTCDate() 方法可根据世界时返回一个月 (UTC) 中的某一天。
协调世界时 (UTC) 是以原子时秒长为基础,在时刻上尽量接近于世界时的一种时间计量系统。
提示:协调世界时,又称世界统一时间,世界标准时间,国际协调时间,简称UTC(Universal Coordinated Time)。
注意: UTC 时间即是 GMT(格林尼治) 时间。

实例:

var d=new Date();
console.log(d.getUTCDate());//1

getUTCDay()

根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。
定义和用法
getUTCDay() 方法根据世界时返回表示星期的一天的一个数字。
注意: Sunday is 0, Monday is 1, and so on.
协调世界时 (UTC) 是以原子时秒长为基础,在时刻上尽量接近于世界时的一种时间计量系统。
提示:协调世界时,又称世界统一时间,世界标准时间,国际协调时间,简称UTC(Universal Coordinated Time)。
注意: UTC 时间即是 GMT(格林尼治) 时间。

实例,现在,我将创建一个数组,使得上面的例子能够输出星期的名称,而不仅仅是一个数字:

var d=new Date();
var weekday=new Array();
weekday[0]="Sunday";
weekday[1]="Monday";
weekday[2]="Tuesday";
weekday[3]="Wednesday";
weekday[4]="Thursday";
weekday[5]="Friday";
weekday[6]="Saturday";

var n = weekday[d.getUTCDay()];//Friday

getUTCFullYear()

根据世界时从 Date 对象返回四位数的年份。

getUTCHours()

根据世界时返回 Date 对象的小时 (0 ~ 23)。

getUTCMilliseconds()

根据世界时返回 Date 对象的毫秒(0 ~ 999)。

getUTCMinutes()

根据世界时返回 Date 对象的分钟 (0 ~ 59)。

getUTCMonth()

根据世界时从 Date 对象返回月份 (0 ~ 11)。

getUTCSeconds()

根据世界时返回 Date 对象的秒钟 (0 ~ 59)。

getYear()

已废弃。 请使用 getFullYear() 方法代替。

parse()

返回1970年1月1日午夜到指定日期(字符串)的毫秒数。

setDate()

设置 Date 对象中月的某一天 (1 ~ 31)。

setFullYear()

设置 Date 对象中的年份(四位数字)。

setHours()

设置 Date 对象中的小时 (0 ~ 23)。

setMilliseconds()

设置 Date 对象中的毫秒 (0 ~ 999)。

setMinutes()

设置 Date 对象中的分钟 (0 ~ 59)。

setMonth()

设置 Date 对象中月份 (0 ~ 11)。

setSeconds()

设置 Date 对象中的秒钟 (0 ~ 59)。

setTime()

setTime() 方法以毫秒设置 Date 对象。

setUTCDate()

根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。

setUTCFullYear()

根据世界时设置 Date 对象中的年份(四位数字)。

setUTCHours()

根据世界时设置 Date 对象中的小时 (0 ~ 23)。

setUTCMilliseconds()

根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。

setUTCMinutes()

根据世界时设置 Date 对象中的分钟 (0 ~ 59)。

setUTCMonth()

根据世界时设置 Date 对象中的月份 (0 ~ 11)。

setUTCSeconds()

setUTCSeconds() 方法用于根据世界时 (UTC) 设置指定时间的秒字段。

toDateString()

把 Date 对象的日期部分转换为字符串。

toISOString()

使用 ISO 标准返回字符串的日期格式。

toJSON()

以 JSON 数据格式返回日期字符串。

toLocaleDateString()

根据本地时间格式,把 Date 对象的日期部分转换为字符串。

toLocaleTimeString()

根据本地时间格式,把 Date 对象的时间部分转换为字符串。

toLocaleString()

据本地时间格式,把 Date 对象转换为字符串。

toString()

把 Date 对象转换为字符串。

toTimeString()

把 Date 对象的时间部分转换为字符串。

toUTCString()

根据世界时,把 Date 对象转换为字符串。

UTC()

根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。

valueOf()

返回 Date 对象的原始值。
valueOf() 方法返回 Date 对象的原始值。
注意:原始值返回1970年1月1日午夜以来的毫秒数!
实例:

var d=new Date();
console.log(d.valueOf());//1551425479765