本文已参与「新人创作礼」活动,一起开启掘金创作之路。
前言
工作中常常会涉及到日期的创建、取值与日期对象属性的修改,本文简单记录一下js内置对象Date()的用法,做个使用总结。
生成Date对象
-
new Date()无入参时,得到当前时间,默认的格式例如Mon Feb 28 2022 10:27:31 GMT+0800 (中国标准时间)const date = new Date() console.log(date)//Mon Feb 28 2022 10:27:31 GMT+0800 (中国标准时间) -
可以用入参指定输出日期时间,以下三种均表示同一时间2022-3-1 10:00:00。
- 第一种注意月份从0表示1月,11表示12月,是差1的关系,因此以下第二个数字2表示3月。
new Date(2022, 2, 1, 10, 0, 0) - 第二种记得格式,月份日期以及时间,数字必须要保持2位数。
new Date("2022-03-01T10:00:00") - 第三种月份要用英文输入,不要遗漏月份与日期,年份与时间中间的空格。
new Date("March 1, 2022 10:0:0")
- 第一种注意月份从0表示1月,11表示12月,是差1的关系,因此以下第二个数字2表示3月。
-
用入参指定日期时间,如果只用到日期年月日,可以不需要指定时间时分秒,默认是0时0分0秒。
new Date(2022, 2, 1) new Date("2022-03-01") new Date("March 01, 2022") -
还有使用时间戳获得年月日,不过一般都不是手动输入,因为正常人一般不会知道时间戳的数字值。
new Date(1646100000000)//Tue Mar 01 2022 10:00:00 GMT+0800 (中国标准时间)
Date对象属性
属性有很多,我就记录一下常用的。
取值
以下表示2022-3-1 10:00:00即new Date(2022, 2, 1, 10, 0, 0)日期对象的取值
| 属性 | 值 |
|---|---|
| getTime() | 时间戳(1646100000000,时间戳表示1970 年 1 月 1 日至今的毫秒数) |
| getFullYear() | 年(2022) |
| getMonth() | 月(2,表示3月,0~11) |
| getDate() | 日(1) |
| getHours() | 时(10) |
| getMinutes() | 分(0) |
| getSeconds() | 秒(0) |
| getMilliseconds() | 毫秒(0,自己手动设置的日期,没有精确到毫秒因此是0) |
| getDay() | 星期几(2,表示星期2,0~6,0表示周日) |
| toLocaleString() | 全日期时间表示(2022/3/6 10:00:00) |
| toLocaleDateString() | 日期表示(2022/3/6) |
| toLocaleTimeString | 时间表示(10:00:00) |
设定值
| 属性 | 值 |
|---|---|
| setTime() | 修改时间戳 |
| setFullYear() | 修改年 |
| setMonth() | 修改月 |
| setDate() | 修改日 |
| setHours() | 修改时 |
| setMinutes() | 修改分 |
| setSeconds() | 修改秒 |
| setMilliseconds() | 修改毫秒 |
尾言
如果觉得文章对你有帮助的话,欢迎点赞收藏哦,有什么错误或者意见建议也可以留言,感谢~