使用 new Date() 创建一个 Date 对象
var my_date = new Date() // 用当前日期和时间创建的新的日期对象
console.log(my_date) // Fri Jan 10 2020 10:16:19 GMT+0800 (中国标准时间)
new Date() 也接受参数
参数主要有 year, month, day, hours, minutes, seconds, milliseconds,用指定的日期和时间创建新的日期对象
year, 指定的年份,四位数,例如2020;或是设定的年份-1900,例如:90 表示的就是1990年;
所以Date中的设定的年份的最小值为1900。相差大与99的话,使用四位数表示
month, 取值为 0-11,一月是 0。十二月是11
hours, 取值区间为 0-23,晚上12点到凌晨1点为 0点
minutes, 取值区间为 0-59
seconds, 取值区间为 0-59
milliseconds, 从 1970 年 1 月 1 日开始计算的毫秒数,可不传这个参数或取值为 0
day, 取值区间为 1-31 由于JavaScript中day的范围为1~31中的值,所以当设为0时,会向前 一天,也即表示上个月的最后一天
例如:
var day = new Date(2020,1,1) // 定义一个指定日期为2020年1月1号的时间对象
利用 new Date() 还可以实现一下需求:
获取某一年某月份的天数
new Date() 的第三个参数为 0,就可以获取到指定年份的指定月份的天数
// y 表示年份, m 表示月份
new Date(y, m, 0).getDate()
// 例如:
var days = new Date(2020, 1, 0).getDate() // 31 获取2020年的一月份一共有多少天
获取某一年某月份的第一天是周几
// y 表示年份, m 表示月份
new Date(y, m-1, 0).getDate()
// 例如:
var week = new Date(2020, 1, 1).getDay() // 6 2020年2月1日是周六
var week1 = new Date(2020, 0, 1).getDay() // 3
// 获取2020年的一月份的第一天是周几,2020,0表示的是上一年2019的12月
// 所以以上表达式等同于 new Date(2019, 12, 1).getDay()
new Date() 如果只传递一个数值参数,这个数值参数代表的就是毫秒。
例如:
var time = new Date(2020) // 候表示的是从 1970 年 1 月 1 日 开始的2020毫秒的日期对象
console.log(new Date(2020).toLocaleString())
// "1970/1/1 上午8:00:02"
其他: