我们都知道new Date()可以获取当前时间的日期,但是不new一样可以获取当前日期
当前日期
输出内容
那么问题就来了,new到底有什么用呢?
这里就涉及到了参数问题,如果没有参数他俩都是当前时间,可是有参数就不一样了
添加参数
添加参数输出
可以看出通过new操作的Date对象是2020年1月1日,而没有new的Date还是当前时间
Date对象参数可以有很多种写法,这里就不一一介绍了,这里介绍两种。
- 一种就是上面这种直接写一个确定的年份,后面还可以加时间。如new Date('2020-1-1 12:12:12')
- 另一种是添加多个参数。如new Date(2020, 1, 5, 12, 12, 12)后面参数不输入默认为取值最小数
注:至少添加两个参数,参数分别是年、月、日、时、分、秒。数值超出自动换算。如2020年13月1日则自动换算撑2021年1月。
注:这里的月份取值是0-11,也就是0是1月,获取时间时需要用当前月份减一。
Date对象常用方法
let d = new Date();
let year = d.getFullYear(); // 获取年份
let month = d.getMonth(); // 获取月份 (取值范围为0-11,实际值需要+1)
let week = d.getDay(); // 获取周几 (0-6, 0为周日)
let day = d.getDate(); // 获取日
let hours = d.getHours(); // 获取小时
let min = d.getMinutes(); // 获取分钟
let s = d.getSeconds(); // 获取秒
let ms = d.getMilliseconds(); // 获取毫秒
let time = d.getTime(); // 1970年1月1日0时0分0秒(UTC,即协调世界时)距离该日期对象所代表时间的毫秒数。
let obj = {
d,
year,
month,
week,
day,
hours,
min,
s,
ms,
time,
}
console.log(obj)