创建 Date 对象
Date 对象由新的 Date() 构造函数创建。
有 4 种方法创建新的日期对象:
new Date()
new Date(year, month, day, hours, minutes, seconds, milliseconds)
new Date(milliseconds)
new Date(date string)
1、new Date() 用当前日期和时间创建新的日期对象:
重点: 日期对象是静态的,即生成日期对象的那一瞬间时间值就固定了。计算机时间正在滴答作响,但日期对象不会。
var d = new Date();
console.log(d)
setInterval(function () {
console.log(d)
}, 1000)
2、new Date(year, month, …) 用指定日期和时间创建新的日期对象。
7个数字分别指定年、月、日、小时、分钟、秒和毫秒(按此顺序):
重点: JavaScript 从 0 到 11 计算月份。一月是 0。十二月是11。
var d = new Date(2018, 11, 24, 10, 33, 30, 0);
var d = new Date(2018, 11, 24, 10, 33, 30);
// 2个数字指定年份和月份:
var d = new Date(2018, 11);
// 不能省略月份。如果只提供一个参数,则将其视为毫秒
var d = new Date(2018); //不对
3、new Date(milliseconds) 毫秒值
1970年 1 月 1 日加上100 000 000 000毫秒,大约是 1973 年 3 月 3 日:
var d = new Date(100000000000);
4、new Date(date string)
日期字符串格式可如下设置
日期的获取方法
1、getTime() 方法
getTime() 方法返回自 1970 年 1 月 1 日以来的毫秒数:
var d = new Date();
var times = d.getTime();
2、getFullYear() 方法
getFullYear() 方法以四位数字形式返回日期年份
3、getMonth() 方法
getMonth() 以数字(0-11)返回日期的月份
4、getDate() 方法
getDate() 方法以数字(1-31)返回日期的日
5、getHours() 方法
getHours() 方法以数字(0-23)返回日期的小时数
6、getMinutes() 方法
getMinutes() 方法以数字(0-59)返回日期的分钟数
7、getSeconds() 方法
getSeconds() 方法以数字(0-59)返回日期的秒数
8、getMilliseconds() 方法
getMilliseconds() 方法以数字(0-999)返回日期的毫秒数
9、getDay() 方法
getDay() 方法以数字(0-6)返回日期的星期名(weekday)
日期的设置方法
setFullYear() 方法
setFullYear() 方法设置日期对象的年份。这个例子设置为 2020 年:
var d = new Date();
d.setFullYear(2020);
特殊重点 setFullYear() 方法也可以选择设置月和日:
var d = new Date();
d.setFullYear(2020, 11, 3);
注意
1、new Date(date string)
字符串转日期,当只有年月日,new Date('2022-09-14')
是到8点,而new Date('2022-9-14')
是到0点,前面放个+
号则转换成时间戳。
let Date0=new Date('2022-09-14 00:00:00') // Wed Sep 14 2022 00:00:00 GMT+0800 (中国标准时间)
let Date1=new Date('2022-09-14') // Wed Sep 14 2022 08:00:00 GMT+0800 (中国标准时间)
let Date2=new Date('2022-9-14') //Wed Sep 14 2022 00:00:00 GMT+0800 (中国标准时间)
let Date3=new Date('2022/09/14') //Wed Sep 14 2022 00:00:00 GMT+0800 (中国标准时间)
let Date4=+new Date('2022/09/14') //1663084800000
let Date5=(new Date('2022/09/14')).getTime() //1663084800000