JavaScript如何将Date类型日期转换为YYYY-MM-DD格式
你可以通过单独提取Date对象的年、月、日字段拼接得到YYYY-MM-DD格式的结果,有两种常用实现方案:
方案1:直接修改原函数,返回格式化后的字符串
function get_date_of_last_n_days_from_today(n){ const targetDate = new Date(Date.now() - (n-1) * 24 * 60 * 60 * 1000); const year = targetDate.getFullYear(); // 月份从0开始计数,需要加1,不足2位补前置0 const month = String(targetDate.getMonth() + 1).padStart(2, '0'); const day = String(targetDate.getDate()).padStart(2, '0'); return `${year}-${month}-${day}`; }
调用get_date_of_last_n_days_from_today(3)即可直接得到符合格式要求的日期字符串。
方案2:单独封装通用格式化函数(适合需要保留原始Date对象的场景)
// 通用格式化工具 function formatDateToYMD(date) { const year = date.getFullYear(); const month = String(date.getMonth() + 1).padStart(2, '0'); const day = String(date.getDate()).padStart(2, '0'); return `${year}-${month}-${day}`; } // 调用示例 const rawDate = get_date_of_last_n_days_from_today(3); const formattedDate = formatDateToYMD(rawDate);
注意事项
上面的方法默认使用本地时区计算,如果需要生成UTC时区的日期,将对应方法替换为getUTCFullYear、getUTCMonth、getUTCDate即可。
内容的提问来源于stack exchange,提问作者diana
相关产品推荐
相关产品推荐

