创建date对象
let now = new Date();
console.log(now);//Wed Aug 16 2023 16:55:32 GMT+0800 (中国标准时间)
获取特定时间组件
let now = new Date();
console.log(now.getFullYear()); // 年份
console.log(now.getMonth() + 1); // 月份,注意月份是从0开始的,所以要加1
console.log(now.getDate()); // 日期
console.log(now.getHours()); // 小时
console.log(now.getMinutes()); // 分钟
console.log(now.getSeconds()); // 秒
console.log(now.getMilliseconds()); // 毫秒 取值范围0-999
console.log(new Date().getTime())//1970年1月1日00:00:00 UTC(即Unix纪元)到该日期的时间差
console.log(new Date().getDay())//星期()
console.log(new Date().getUTCHours());//协调世界时
日期计算
let now = new Date();
let tomorrow = new Date(now.getTime() + 24 * 60 * 60 * 1000); // 加一天
let nextMonth = new Date(now.getTime() + 30 * 24 * 60 * 60 * 1000); // 加一个月
console.log(tomorrow);
console.log(nextMonth);
var dt1 = new Date()
var dt2 = new Date("2022-08-16 10:45:00")
var re = dt1 - dt2 //得到两个时间的差值(毫秒)
console.log(re)// 几年 几月 几天 几分钟 几秒
自定义函数处理日期
在 new Date()
对象上调用一些内置方法来获取日期和时间的各个部分,或者进行日期和时间的计算。例如,getDay()
方法可以获取日期是星期几的整数表示,getMonth()
方法可以获取日期的月份(0表示一月,1表示二月,以此类推),getFullYear()
方法可以获取日期的年份。
如果你需要编写自定义函数来处理日期和时间,可以考虑将该函数封装在一个对象中,并将该对象作为 new Date()
对象的扩展
function MyDate(year, month, day, hour, minute, second) {
this.date = new Date(year, month, day, hour, minute, second);
this.getDayName = function() {
var days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
return days[this.date.getDay()];
};
}
var myDate = new MyDate(2023, 7, 16, 19, 30, 0);
console.log(myDate.getDayName()); // "Wednesday"