JavaScript类型系统——日期Date对象全面了解
什么是Date对象
Date对象是JavaScript日期数据类型的对象表示法,它能够精确地表示精确到毫秒的日期和时间。
如何创建Date对象
Date对象的创建有以下几种方式:
1. 直接创建
可以通过new关键字直接创建Date对象。
const now = new Date();
console.log(now); //输出当前时间
2. 通过时间戳创建
可以通过传入一个时间戳(从1970年1月1日00:00:00 UTC开始计算的毫秒数)来创建Date对象。
const timestamp = 1577808000000;
const date = new Date(timestamp);
console.log(date); //输出2020-01-01T00:00:00.000Z
3. 通过日期字符串创建
可以通过传入一个日期字符串来创建Date对象。
const dateString = '2020/01/01 00:00:00';
const date = new Date(dateString);
console.log(date); //输出2020-01-01T00:00:00.000Z
Date对象的常用方法
Date对象提供了一些常用方法来获取和设置日期和时间。
1. 获取当前时间
可以通过以下方法获取当前时间。
const now = new Date();
const year = now.getFullYear(); //获取当前年份
const month = now.getMonth() + 1; //获取当前月份,月份是从0开始计数,所以要加1
const date = now.getDate(); //获取当前日期
const hour = now.getHours(); //获取当前小时
const minute = now.getMinutes(); //获取当前分钟
const second = now.getSeconds(); //获取当前秒钟
console.log(`${year}-${month}-${date} ${hour}:${minute}:${second}`); //输出当前时间
2. 设置时间
可以通过以下方法设置Date对象的时间。
const now = new Date();
now.setFullYear(2022); //设置年份为2022
now.setMonth(3); //设置月份为4月,因为月份是从0开始计数,所以3表示4月
now.setDate(15); //设置日期为15日
now.setHours(10); //设置小时为10点
now.setMinutes(30); //设置分钟为30分
now.setSeconds(0); //设置秒钟为0
console.log(now); //输出2022-04-15T02:30:00.000Z
Date对象的常用属性
Date对象有一些常用的属性。
1. getTime()
getTime()方法返回从1970年1月1日00:00:00 UTC开始计算的毫秒数。
const now = new Date();
const timestamp = now.getTime();
console.log(timestamp); //输出当前时间的时间戳
2. getDay()
getDay()方法返回星期几,星期日返回0,星期一返回1,以此类推。
const now = new Date();
const dayOfWeek = now.getDay();
console.log(dayOfWeek); //输出当前星期几
示例说明
以下是一个示例,演示如何使用Date对象获取一个特定日期所在星期的周一和周日的日期。
function getWeekRange(date) {
const startOfWeek = new Date(date);
startOfWeek.setDate(date.getDate() - date.getDay());
const endOfWeek = new Date(date);
endOfWeek.setDate(date.getDate() + (6 - date.getDay()));
return {
startOfWeek,
endOfWeek
};
}
const date = new Date('2022-05-05');
const week = getWeekRange(date);
console.log(`本周周一: ${week.startOfWeek}`);
console.log(`本周周日: ${week.endOfWeek}`);
输出结果:
本周周一: Mon May 02 2022 00:00:00 GMT+0800 (中国标准时间)
本周周日: Sun May 08 2022 00:00:00 GMT+0800 (中国标准时间)
以上就是关于JavaScript日期Date对象的全面了解的详细讲解和示例说明。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript类型系统——日期Date对象全面了解 - Python技术站