📜  js 中的日期比较 - Javascript (1)

📅  最后修改于: 2023-12-03 15:32:22.261000             🧑  作者: Mango

JS 中的日期比较

JS 中的日期比较是开发中经常用到的基础操作。在本文中,我们将介绍如何使用 JS 中的 Date 对象进行日期比较操作。

创建一个日期对象

要创建一个日期对象,可以使用 new Date() 的方式,它将返回一个表示当前日期和时间的对象。

const now = new Date();
console.log(now);

输出结果:

Fri Mar 26 2021 10:31:05 GMT+0800 (中国标准时间)
比较两个日期

如果要比较两个日期是否相等,我们可以使用 getTime() 方法来获取日期的毫秒数,然后进行比较操作。

const date1 = new Date('2020-01-01');
const date2 = new Date('2020-01-01');

if (date1.getTime() === date2.getTime()) {
  console.log('两个日期相等');
} else {
  console.log('两个日期不相等');
}

输出结果:

两个日期相等
计算日期之间的天数差

计算两个日期之间的天数差,可以使用 getTime() 和数学运算符进行计算。

const date1 = new Date('2020-01-01');
const date2 = new Date('2020-03-01');

const days = Math.abs(date1.getTime() - date2.getTime()) / (1000 * 60 * 60 * 24);

console.log(days);

输出结果:

60
判断一个日期在另一个日期之前或之后

要判断一个日期是否在另一个日期之前或之后,可以使用比较运算符进行操作。

const date1 = new Date('2020-01-01');
const date2 = new Date('2020-03-01');

if (date1 < date2) {
  console.log('date1 在 date2 之前');
} else if (date1 > date2) {
  console.log('date1 在 date2 之后');
} else {
  console.log('两个日期相等');
}

输出结果:

date1 在 date2 之前
格式化日期字符串

如果要将一个日期对象转换为特定格式的日期字符串,我们可以使用 toLocaleString() 方法或第三方库如 moment.js 进行操作。

const date = new Date();

console.log(date.toLocaleString('zh-CN', { hour12: false })); // 2021/3/26 下午4:03:17
总结

在 JS 中进行日期比较操作是开发中很常见的操作,了解日期对象的基本操作可以帮助我们轻松地完成许多日期相关的功能。本文介绍了如何创建一个日期对象、比较两个日期、计算日期之间的天数差、判断一个日期在另一个日期之前或之后以及格式化日期字符串等操作。