javascript Date类型
JavaScript Date类型
1.概述
ES中的Date类型使用自UTC(国际协调时间)1970年1月1日午夜(零时)开始经过的毫秒数来保存日期的。创建一个日期对象,使用Date构造函数就可,如 var now = new Date();
在调用Date构造函数而不传递参数的情况下,新创建的对象自动获取当前日期和时间。如果想根据特定的日期和时间创建对象,比如输入表示该事件的毫秒数。ECMAScript提供了两个方法:
Date.parse():接收一个表示日期的字符串参数,然后根据这个字符串返回相应日期的毫秒数。
| 日期格式 | 例子 |
| “月/日/年” | 6/13/2020 |
| “英文月名 日,年” | may 10,2020 |
| “英文星期几 英文月名 日 年 时:分:秒 GMT-0700” | Tue May 25 2004 00:00:00 GMT-0700 |
| ISO 8601扩展格式 YYYY-MM-DDTHH:mm:ss:sssZ |
2004-05-25T00:00:00 |
console.log(new Date(Date.parse("May 25,2004"))); //Tue May 25 2004 00:00:00 GMT+0800 (中国标准时间)
//Date.parse("May 25,2004")返回的是毫秒数
Date.UTC():同样也返回表示日期的毫秒数,但它与Date.parse()在构建值得时候使用不同得信息。Date.UTC()得参数分别是年,月,日,小时,分钟,秒以及毫秒。在这些参数中,前两个参数是必须得。后面得参数如果省略则自动默认为0.
console.log(new Date(Date.UTC(2020.4,4))); //Date.UTC(2020.4,4)返回的值是毫秒数。
2.日期格式化的方法
- toDateString():将Date转换为一个'年月日'字符串
- toTimeString():将Date转换为一个'时分秒'字符串
- toLocaleDateString():将Date转换为一个'年月日'的本地格式字符串
- toLocaleTimeString():将Date转换为一个'时分秒'的本地格式字符串
- toString() :将Date转换为一个'年月日 时分秒'字符串
- valueOf() :与getTime()一样, 返回Date对象与'1970/01/01 00:00:00'之间的毫秒值(北京时间的时区为东8区,起点时间实际为:'1970/01/01 08:00:00')
var dt = new Date(); console.log(dt.toString()); // Wed Jul 01 2020 15:26:17 GMT+0800 (中国标准时间 console.log(dt.toLocaleString()); // 2020/7/1 下午3:26:17 console.log(dt.toDateString()); //Wed Jul 01 2020 console.log(dt.toLocaleDateString()); // 2020/7/1 console.log(dt.toTimeString()); // 15:26:17 GMT+0800 (中国标准时间) console.log(dt.toLocaleTimeString()); // 下午3:26:17 console.log(dt.valueOf()); // 1593588377034
3.日期时间组件方法
- getFullYear() :返回Date对象的年份值;4位年份。
- getMonth() :返回Date对象的月份值。从0开始,所以真实月份=返回值+1 。
- getDate() :返回Date对象的月份中的日期值;值的范围1~31
- getHours() :返回Date对象的小时值。
- getMinutes() :返回Date对象的分钟值。
- getSeconds() :返回Date对象的秒数值。
- getMilliseconds() :返回Date对象的毫秒值。
- getDay() :返回Date对象的一周中的星期值;0为星期天,1为星期一、2为星期二,依此类推
- getTime() :返回Date对象与'1970/01/01 00:00:00'之间的毫秒值(北京时间的时区为东8区,起点时间实际为:'1970/01/01 08:00:00') 。
- setFullYear(year, opt_month, opt_date) :设置Date对象的年份值;4位年份。
- setMonth(month, opt_date) :设置Date对象的月份值。0表示1月,11表示12月。
- setDate(date) :设置Date对象的月份中的日期值;值的范围1~31 。
- setHours(hour, opt_min, opt_sec, opt_msec) :设置Date对象的小时值。
- setMinutes(min, opt_sec, opt_msec) :设置Date对象的分钟值。
- setSeconds(sec, opt_msec) :设置Date对象的秒数值。
- setMilliseconds(msec) :设置Date对象的毫秒值。

浙公网安备 33010602011771号