使用 JavaScript 检查日期是否为昨天
Check if a Date is Yesterday using JavaScript
检查日期是否为昨天:
- 从当前日期减去
1
天得到昨天的日期。 - 使用
toDateString()
方法比较日期。 - 如果该方法返回
2
相等的字符串,则日期为昨天。
索引.js
function isYesterday(date) { const yesterday = new Date(); yesterday.setDate(yesterday.getDate() - 1); // 👇️ Yesterday's date console.log(date); if (yesterday.toDateString() === date.toDateString()) { return true; } return false; } const y = new Date(); y.setDate(y.getDate() - 1); console.log(isYesterday(y)); // 👉️ true console.log(isYesterday(new Date('2022-01-21'))); // 👉️ false
我们创建了一个可重用的函数,它将一个Date
对象作为参数并检查传入的日期是否为昨天。
我们在函数中做的第一件事是使用
Date()
构造函数来获取当前日期。
一旦我们有了当前日期,我们必须从中减去1
天得到昨天的日期。
setDate()方法接受一个代表一个月中某天的
数字,并在给定Date
实例
上设置该值。
JavaScript 中的
Date
对象自动处理在日期中减去或增加 X 天将我们推到上/下一个月或一年并调整值的场景。现在我们有了昨天的日期,我们所要做的就是将日期与传入的日期进行比较,忽略时间。
toDateStringDate
方法以人类可读的形式返回对象的
日期部分。
索引.js
// 👇️ Tue Jan 25 2022 console.log(new Date().toDateString());
如果该方法为昨天的日期和传入的日期返回相同的字符串,那么传入的日期就是昨天的日期。
在比较两个日期时忽略小时、分钟、秒和毫秒是非常重要的,因为如果不这样做,就会将日期与特定时刻进行比较。