JavaScript Date 对象


JavaScript Date 对象

JavaScript Date 对象用来处理日期和时间。您可以使用 Date 对象来创建日期对象,从而输出当前日期、时间或者某一个具体日期、时间。Date 对象提供了很多有用的方法来获得、设置、操纵日期和时间。

创建 Date 对象

创建 Date 对象常用的方法是使用 new 关键字。语法为: new Date()

如果您不指定参数,则 Date 对象会使用系统时间(浏览器电脑所使用的时间)。例如:

let currentDate = new Date();
console.log(currentDate);

输出的结果可能为: Wed Jul 21 2021 16:41:09 GMT+0800 (中国标准时间)

如果您想要指定一个特定的时间,可以传入一个时间戳值,或者一个日期字符串。例如:

// 通过时间戳创建一个 Date 对象
let d1 = new Date(1626866612053);
console.log(d1);

// 通过日期字符串创建一个 Date 对象
let d2 = new Date("2021-07-21T01:10:12.053Z");
console.log(d2);

输出的结果为:

Thu Jul 22 2021 09:36:52 GMT+0800 (中国标准时间)
Wed Jul 21 2021 09:10:12 GMT+0800 (中国标准时间)

从 Date 对象中获取日期和时间信息

Date 对象提供了很多方法来获取日期和时间信息。例如:

let d = new Date();
console.log(d.getFullYear());   // 返回当前年份四位数
console.log(d.getMonth());      // 返回当前月份,从0开始(0代表一月)
console.log(d.getDate());       // 返回当前月份的日期,从1开始
console.log(d.getDay());        // 返回当前星期几,从0开始(0代表星期日)
console.log(d.getHours());      // 返回当前小时(0-23)
console.log(d.getMinutes());    // 返回当前分钟数(0-59)
console.log(d.getSeconds());    // 返回当前秒数(0-59)
console.log(d.getMilliseconds());  // 返回当前毫秒数(0-999)
console.log(d.getTime());       // 返回当前时间的时间戳(从1970年1月1日开始计算的毫秒数)
console.log(d.toString());      // 将当前时间转换为字符串(例如:Wed Jul 21 2021 16:41:09 GMT+0800 (中国标准时间))

设置 Date 对象中的日期和时间信息

您可以使用 Date 对象提供的方法设置日期和时间信息。例如:

let d = new Date();
d.setFullYear(2022);        // 设置当前年份为2022
d.setMonth(11);             // 设置当前月份为12月,从0开始,所以11代表12月
d.setDate(25);              // 设置当前日期为25号
console.log(d);

输出的结果为: Sat Dec 25 2022 17:39:11 GMT+0800 (中国标准时间)

计算两个时间之间的差值

使用 Date 对象可以方便地计算两个时间之间的差值。例如:

var date1 = new Date("2022-01-01");
var date2 = new Date("2022-12-31");

var diff = date2.getTime() - date1.getTime();

// 计算时间差的天数
var days = diff / (1000 * 3600 * 24);

console.log("离2022年结束还有" + days + "天");

输出的结果为:离2022年结束还有364天

总结

JavaScript Date 对象提供了非常全面且易用的日期和时间处理功能,满足了大多数业务场景的需求。在使用 Date 对象时,需要了解其提供的各种方法和属性,灵活应用来进行日期和时间处理。同时,在处理跨时区时间或者时间戳等特殊场景时,需要特别小心和注意。