一、Date概述
在JavaScript中,Date(日期)对象用于处理日期和时间。它可以创建一个指定的日期和时间,也可以把现在的时间转化为相应的数值类型。Date对象是由一个长整型数表示的时间戳。这个时间戳表示从1970年1月1日00:00:00开始到现在的毫秒总数,可以用getTime()方法获取。同时,Date对象还有很多附属的常用方法,例如获取年、月、日等。
二、Object转Date方法
JavaScript中,Date可以通过多种方式创建,例如直接传入一个时间戳数值或通过字符串创建。但如果我们已经有了一个Object类型的对象,如何将它转换成Date类型的对象呢?JavaScript提供了两种方式:
1. new Date(Number object)
通过new Date(Number object)的方式可以将一个Object类型的对象转化成一个Date类型的对象。这个Object必须是一个合法的时间戳,如果不是将返回Invalid Date。下面是一个示例代码:
const obj = { time: 1626764282459 };
const date = new Date(obj.time);
console.log(date);
// 输出结果为:Tue Jul 20 2021 22:04:42 GMT+0800
2. Object.assign()
通过使用Object.assign()方法,我们可以将一个具有至少年、月、日中任意一个属性的Object对象转化成一个Date对象,这里需要注意的是如果缺少某个字段,Date会自动补全。下面是一个示例代码:
const obj = { year: 2021, month: 6, day: 20 };
const date = Object.assign(new Date(), obj);
console.log(date);
// 输出结果为:Sun Jul 20 2021 00:00:00 GMT+0800
三、Date对象常用方法
在日常开发中,我们常常需要获取Date对象的年、月、日、时、分、秒等信息,这里给出一些常用的方法:
1. getFullYear()
获取年份。下面是一个示例代码:
const date = new Date();
console.log(date.getFullYear());
// 输出结果为当前年份,例如:2021
2. getMonth()
获取月份,返回0~11之间的值,其中0表示1月,11表示12月。下面是一个示例代码:
const date = new Date();
console.log(date.getMonth());
// 输出结果为当前月份,例如:6
3. getDate()
获取日期,返回1~31之间的值。下面是一个示例代码:
const date = new Date();
console.log(date.getDate());
// 输出结果为当前日期,例如:20
4. getHours()
获取小时,返回0~23之间的值。下面是一个示例代码:
const date = new Date();
console.log(date.getHours());
// 输出结果为当前小时,例如:22
5. getMinutes()
获取分钟,返回0~59之间的值。下面是一个示例代码:
const date = new Date();
console.log(date.getMinutes());
// 输出结果为当前分钟数,例如:28
6. getSeconds()
获取秒数,返回0~59之间的值。下面是一个示例代码:
const date = new Date();
console.log(date.getSeconds());
// 输出结果为当前秒数,例如:34
结语
本文对JavaScript中的Object转Date方法进行了详细的讲解,并给出了常用的Date对象方法。在日常开发中可以根据实际需求灵活运用。