简介
在本实验中,我们将深入学习 JavaScript 编程,并创建一个名为 daysAgo 的函数。该函数接受一个数字作为输入,并计算从今天起 n 天前的日期。我们将使用 Date 构造函数以及各种方法,如 Math.abs() 和 Date.prototype.setDate(),来完成此任务,并以 yyyy-mm-dd 格式的字符串返回结果。在本实验结束时,你将对在 JavaScript 中处理日期有更深入的理解。
在本实验中,我们将深入学习 JavaScript 编程,并创建一个名为 daysAgo 的函数。该函数接受一个数字作为输入,并计算从今天起 n 天前的日期。我们将使用 Date 构造函数以及各种方法,如 Math.abs() 和 Date.prototype.setDate(),来完成此任务,并以 yyyy-mm-dd 格式的字符串返回结果。在本实验结束时,你将对在 JavaScript 中处理日期有更深入的理解。
以下是一个 JavaScript 函数,它可以计算从今天起 n 天前的日期,并以 yyyy-mm-dd 格式的字符串返回:
const daysAgo = (n) => {
const today = new Date();
const daysAgoDate = new Date(today.setDate(today.getDate() - Math.abs(n)));
return daysAgoDate.toISOString().split("T")[0];
};
其工作原理如下:
Date 构造函数获取当前日期。Math.abs() 函数确保天数为正数。Date.prototype.getDate() 函数获取当前日期的月份中的日期。Date.prototype.setDate() 函数相应地更新日期。Date.prototype.toISOString() 函数将结果日期以 yyyy-mm-dd 格式作为字符串返回。示例用法:
daysAgo(20); // "2020-09-16" (如果当前日期是 2020-10-06)
恭喜你!你已完成“过去日期”实验。你可以在 LabEx 中练习更多实验以提升技能。