📅  最后修改于: 2023-12-03 15:02:59.917000             🧑  作者: Mango
在JavaScript中,要比较两个日期是否按天相同,可以使用Moment.js库。Moment.js是一个非常流行的JavaScript日期库,它提供了各种函数来解析,验证,操作和显示日期。
要在项目中使用Moment.js,可以使用npm进行安装:
npm install moment
通过Moment.js,可以使用isSame()
函数比较两个日期是否按天相同。该函数接收一个参数,用于指定比较的日期部分(年,月,日,小时等)。对于比较日期是否按天相同,我们可以将参数设置为day
。
下面是一个例子,比较两个日期是否按天相同:
const date1 = moment('2022-12-30');
const date2 = moment('2022-12-31');
const isSameDay = date1.isSame(date2, 'day');
console.log(isSameDay); // false
在这个例子中,我们创建了两个日期对象,分别为date1
和date2
。我们然后使用isSame()
函数来比较这两个日期是否按天相同。我们将第二个参数设置为day
,以指定我们只比较日期的天部分。
运行上述代码会输出false
,因为这两个日期不是同一天。
如果想要比较多个日期是否按天相同,可以使用isSame()
函数的另一个形式。该函数可以接收一个数组作为参数,数组中包含要比较的日期对象。使用该方法时,将第二个参数设置为day
。
以下是一个示例,比较三个日期是否按天相同:
const date1 = moment('2022-12-30');
const date2 = moment('2022-12-31');
const date3 = moment('2022-12-30');
const isSameDay = moment([date1, date2, date3]).isSame('day');
console.log(isSameDay); // true
在这个例子中,我们创建了三个日期对象,分别为date1
,date2
和date3
。我们然后使用moment()
函数创建一个Moment.js数组,将三个日期对象作为参数传入。我们接着使用isSame()
函数来比较这三个日期对象是否按天相同。我们将第二个参数设置为day
,以指定我们只比较日期的天部分。
运行上述代码会输出true
,因为这三个日期按天相同。
使用Moment.js可以轻松比较两个或多个日期是否按天相同。将第二个参数设置为day
,即可只比较日期的天部分。 Moment.js还提供了许多其他有用的函数,用于解析,验证,操作和显示日期。详细文档请参见Moment.js网站。