JavaScript函数addDate(n)返回指定天数后的日期字符串

ChatGPT4o 使用 ChatGPT 4o 回答

问题:

写一个js函数adddate(n),返回日期字符串格式"2024-06-05",n是返回当前日期加上几天。

回答:

要编写一个 JavaScript 函数 addDate(n),该函数返回当前日期加上 n 天后的日期字符串,格式为 "YYYY-MM-DD"。可以使用 JavaScript 的 Date 对象来实现这一功能。以下是实现代码:

function addDate(n) {
    // 获取当前日期
    const currentDate = new Date();
    
    // 在当前日期的基础上加上 n 天
    currentDate.setDate(currentDate.getDate() + n);
    
    // 获取年、月、日
    const year = currentDate.getFullYear();
    const month = String(currentDate.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以要加1,并且补零
    const day = String(currentDate.getDate()).padStart(2, '0'); // 补零
    
    // 返回格式化的日期字符串
    return `${year}-${month}-${day}`;
}

// 示例使用
console.log(addDate(5)); // 返回当前日期加上5天后的日期

解释

  1. 获取当前日期:使用 new Date() 获取当前日期和时间。
  2. 加上 n 天:使用 setDate 方法在当前日期的基础上加上 n 天。
  3. 格式化日期
    • getFullYear() 获取年份。
    • getMonth() 获取月份(从0开始,所以需要加1)。
    • getDate() 获取日期。
    • 使用 String.prototype.padStart 方法确保月份和日期是两位数(例如,1 补成 01)。
  4. 返回格式化的日期字符串:使用模板字符串 ${year}-${month}-${day} 返回结果。

这样,调用 addDate(n) 就会返回当前日期加上 n 天后的日期字符串,格式为 `"YYYY-MM