Date #

属性 #

属性名 描述
constructor 返回对创建此对象的 Date 函数的引用。
prototype 添加属性和方法

基础方法 #

方法 描述
Date() 返回当日的日期和时间。
parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。
UTC() 根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。
now() es5 返回表示调用这个方法时的日期和时间的毫秒数.

日期/时间组件方法 #

方法 描述
getTime() 返回 1970 年 1 月 1 日至今的毫秒数。与valueOf()方法返回的值相同
setTime(毫秒) 以毫秒设置 Date 对象,会改变整个日期
getFullYear(年) 从 Date 对象以四位数字返回年份。
getUTCFullYear(年) 根据世界时从 Date 对象返回四位数的年份。
getYear() 废弃 请使用 getFullYear() 方法代替。
setFullYear() 设置 Date 对象中的年份(四位数字)。
setUTCFullYear() 根据世界时设置 Date 对象中的年份(四位数字)。
setYear()废弃 请使用 setFullYear() 方法代替。
getMonth() 从 Date 对象返回月份 (0 ~ 11)。
getUTCMonth() 根据世界时从 Date 对象返回月份 (0 ~ 11)。
setMonth(月) 设置 Date 对象中月份 (0 ~ 11)。
setUTCMonth(月) 根据世界时设置 Date 对象中的月份 (0 ~ 11)。
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getUTCDate() 根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。
setDate(日) 设置 Date 对象中月的某一天 (1 ~ 31)。
setUTCDate(日) 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。
getUTCDay() 根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。
getHours() 返回 Date 对象的小时 (0 ~ 23)。
getUTCHours() 根据世界时返回 Date 对象的小时 (0 ~ 23)。
setHours(时) 设置 Date 对象中的小时 (0 ~ 23)。
setUTCHours(时) 根据世界时设置 Date 对象中的小时 (0 ~ 23)。
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
getUTCMinutes() 根据世界时返回 Date 对象的分钟 (0 ~ 59)。
setMinutes(分) 设置 Date 对象中的分钟 (0 ~ 59)。
setUTCMinutes(分) 根据世界时设置 Date 对象中的分钟 (0 ~ 59)。
getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
getUTCSeconds() 根据世界时返回 Date 对象的秒钟 (0 ~ 59)。
setSeconds(秒) 设置 Date 对象中的秒钟 (0 ~ 59)。
setUTCSeconds(秒) 根据世界时设置 Date 对象中的秒钟 (0 ~ 59)。
getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。
getUTCMilliseconds() 根据世界时返回 Date 对象的毫秒(0 ~ 999)。
setMilliseconds(毫秒) 设置 Date 对象中的毫秒 (0 ~ 999)。
setUTCMilliseconds(毫秒) 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。
getTimezoneOffset() 返回本地时间与UTC时间相差的分钟数。例如,美国东部标准时间返回300。在某

地进入夏令时的情况下,这个值会有所变化 toSource() | 返回该对象的源代码。

日期格式化方法 #

方法 描述
toDateString() 把 Date 对象的日期部分转换为字符串,以特定于实现的格式显示星期几、月、日和年;
toTimeString() 把 Date 对象的时间部分转换为字符串,以特定于实现的格式显示时、分、秒和时区;
toLocaleDateString() 根据本地时间格式,把 Date 对象的日期部分转换为字符串,以特定于地区的格式显示星期几、月、日和年;
toLocaleTimeString() 根据本地时间格式,把 Date 对象的时间部分转换为字符串,以特定于实现的格式显示时、分、秒;
toUTCString() 根据世界时,把 Date 对象转换为字符串。
toGMTString()废弃 请使用 toUTCString() 方法代替。

继承的方法 #

方法 描述
toLocaleString() 根据本地时间格式,把 Date 对象转换为字符串。
toString() 把 Date 对象转换为字符串,返回带有时区信息的日期和时间,其中时间一般以军用时间(即小时的范围是0 到23)表示
valueOf() 不返回字符串,而是返回日期的毫秒表示

创建对象 #

var myDate = new Date();//初始值为系统当前时间
//英文表示月份名称,从January到December
new Date("July 22,1994 12:15:00");//
new Date("July 22,1994"); 
//整数表示月份,从0到11 
new Date(1994,6,22,12,15,00); 
new Date(1994,6,22); 
new Date(1137075575000); //参数表示的是需要创建的时间和 GMT时间1970年1月1日之间相差的毫秒数

这里有个小问题:为什么时间初始是从1970年1月1日0点开始呐?

很多编程语言起源于UNIX系统,而1970年1月1日0点算 UNIX 和 C语言 生日(贝尔实验室)。最初计算机操作系统是32位,而时间也是用32位表示,能表示的最长时间范围为68年,超出时间范围会发生时间回归的现象。

方法使用 #

Date() 返回当前系统时间

console.log(Date()); //Fri Mar 24 2017 21:15:09 GMT+0800 (中国标准时间)

getDate() 返回日期

var birthday = new Date("July 22, 1994 12:15:00");
console.log(birthday.getDate()); //22

getTime()返回距离1970 年 1 月 1 日的毫秒数

var d = new Date(); 
var a = new Date("July 22,1994");
console.log(d.getTime() + "        " + a.getTime()); //1490363547304        774806400000

getTimezoneOffset() 本地时间与 GMT 时间之间的时间差,以分钟为单位

返回之所以以分钟计,而不是以小时计,原因是某些国家所占有的时区甚至不到一个小时的间隔

var d = new Date();
var gmtHours = d.getTimezoneOffset()/60;
console.log("The local time zone is: GMT " + gmtHours); //The local time zone is: GMT -8