Appearance
3.7 日期和时间对象
3.7.1基本概念
Date是JavaScript的内置对象,系统在Date对象中封装了与日期和时间相关的属性和方法。
Date使用UTC1970年1月1日0时开始经过的毫秒数来存储时间。
GMT 格林尼治时间
UTC 国际协调时间
3.7.2Date对象的创建:
js
var date= new Date(); //无参数的情况下返回值为当前时间。
var date = new Date(milliseconds);
var date = new Date(dateString);
var date = new Date(year, month, day, hours, minutes, seconds, milliseconds);WARNING
不同浏览器显示的时间格式会有细微差异
3.7.3Date对象的方法:
Date.now返回自1970年1月1日 00:00:00 UTC到当前时间的毫秒数。
js
var nowTime = Date.now();Date.parse返回自1970年1月1日 00:00:00 UTC到指定日期(字符串)的毫秒数。 支持的时间格式如下:1/24/2016/January 24,2016/Sun Jan 24 2016 10:10:10 GMT+0800
js
var time = Date.parse("1/24/2016")Date.UTC返回自1970年1月1日 00:00:00 UTC到指定构造函数的毫秒数。 Date.UTC(year,month,date,hrs,min,sec,ms)
year1900 年后的某一年份。month0 到 11 之间的一个整数,表示月份。date1 到 31 之间的一个整数,表示某月当中的第几天。hrs0 到 23 之间的一个整数,表示小时。min0 到 59 之间的一个整数,表示分钟。sec0 到 59 之间的一个整数,表示秒。ms0 到 999 之间的一个整数,表示毫秒。
js
var time = Date.UTC(2012,02,30)getFullYear从 Date 对象以四位数字返回年份。getMonth从 Date 对象返回月份 (0 ~ 11)。getDate从 Date 对象返回一个月中的某一天 (1 ~ 31)。getDay从 Date 对象返回一周中的某一天 (0 ~ 6)。getHours返回 Date 对象的小时 (0 ~ 23)。getMinutes返回 Date 对象的分钟 (0 ~ 59)。getSeconds返回 Date 对象的秒数 (0 ~ 59)。getMilliseconds返回 Date 对象的毫秒(0 ~ 999)。getTime返回 1970 年 1 月 1 日至今的毫秒数。getTimezoneOffset返回本地时间与格林威治标准时间 (GMT) 的分钟差getUTCDate根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。getUTCDay根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。getUTCFullYear根据世界时从 Date 对象返回四位数的年份。getUTCHours根据世界时返回 Date 对象的小时 (0 ~ 23)。getUTCMilliseconds根据世界时返回 Date 对象的毫秒(0 ~ 999)。getUTCMinutes根据世界时返回 Date 对象的分钟 (0 ~ 59)。getUTCMonth根据世界时从 Date 对象返回月份 (0 ~ 11)。getUTCSeconds根据世界时返回 Date 对象的秒钟 (0 ~ 59)。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方法以毫秒设置 Date 对象。setUTCDate根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。setUTCFullYear根据世界时设置 Date 对象中的年份(四位数字)。setUTCHours根据世界时设置 Date 对象中的小时 (0 ~ 23)。setUTCMilliseconds根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。setUTCMinutes根据世界时设置 Date 对象中的分钟 (0 ~ 59)。setUTCMonth根据世界时设置 Date 对象中的月份 (0 ~ 11)。setUTCSeconds方法用于根据世界时 (UTC) 设置指定时间的秒字段。toDateString把 Date 对象的日期部分转换为字符串。toISOString使用 ISO 标准返回字符串的日期格式。toJSON以JSON 数据格式返回日期字符串。toUTCString根据世界时,把 Date 对象转换为字符串。
3.7.4Date对象的相关字符串方法:
toSting把Date实例的字符串表示toDateSting把Date的日期部分字符串表示toTimeSting把Date的时间部分字符串表示toLocaleString根据本地时区把 Date 对象转换为字符串toLocaleDateString根据本地时区把,把 Date 对象的日期部分转换为字符串。toLocaleTimeString根据本地时区把,把 Date 对象的时间部分转换为字符串。valueOf转换为毫秒数
WARNING
- 格式不正确会返回NaN
- 注意UTC时间和时区的换算,如东八区和标准时间是八小时时差