如何使用JavaScript找到n天前的日期?

如前所述,JavaScript中的Date对象类似于数字。这意味着您可以使用Date.prototype.getDate()Date.prototype.setDate()方法轻松地从日期中添加或减去天数

[!NOTE]

我已经详细介绍了如何在日期上添加天数。我强烈建议阅读更多关于这个主题的内容,因为它在许多情况下都很有用。

使用这些方法,我们可以轻松地计算n天前的日期。我们也可以使用相同的方法计算n天后的日期。

const daysAgo = n => {
  let d = new Date();
  d.setDate(d.getDate() - Math.abs(n));
  return d;
};

const daysFromToday = n => {
  let d = new Date();
  d.setDate(d.getDate() + Math.abs(n));
  return d;
};

daysAgo(20); // 2023-12-17(如果当前日期是2024-01-06)
daysFromToday(20); // 2024-01-26(如果当前日期是2024-01-06)