js 根据当前时间往前推15天或往后推15天等(例如当前时间往后15天后的日期。并实现今天、明天、后天、周)

本次分享,在项目中开发车票购买功能需要用到日期筛选

思路:

1、首先获取当前时间戳

2、根据当前时间戳拿到15天后的日期

3、根据天匹配星期几

4、将时间戳转换年、月、日并重组

实现代码

html 复制代码
// 获取当前日期
const today = new Date();
			
// 往前推15天的日期
const dates = [];
for(let i = 0; i < 15; i++) {
	const date = new Date(today.getFullYear(), today.getMonth(), today.getDate() + i);
	let name;
	if(i === 0) {
		name = '今天';
	} else if(i === 1) {
		name = '明天';
	} else if(i === 2) {
		name = '后天';
	} else {
		name = getDayName(date.getDay());
	}
	dates.push({ name: name, date: formatDate(date) });
}


// 根据星期几获取对应的名称
function getDayName(day) {
	 const dayNames = ['周日', '周一', '周二', '周三', '周四', '周五', '周六'];
	 return dayNames[day];
}
	
// 格式化日期为 'yyyy-MM-dd' 格式
function formatDate(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}`;
}

最后我们console.log(dates)

得到以下结果

交流qq群:712627377

关注小程序更多模板,插件等

相关推荐
以卿a18 分钟前
C++ 模板初阶
开发语言·c++
s:10322 分钟前
【框架】参考 Spring Security 安全框架设计出,轻量化高可扩展的身份认证与授权架构
java·开发语言
道不尽世间的沧桑1 小时前
第17篇:网络请求与Axios集成
开发语言·前端·javascript
久绊A1 小时前
Python 基本语法的详细解释
开发语言·windows·python
bin91534 小时前
DeepSeek 助力 Vue 开发:打造丝滑的复制到剪贴板(Copy to Clipboard)
前端·javascript·vue.js·ecmascript·deepseek
软件黑马王子5 小时前
C#初级教程(4)——流程控制:从基础到实践
开发语言·c#
闲猫5 小时前
go orm GORM
开发语言·后端·golang
晴空万里藏片云6 小时前
elment Table多级表头固定列后,合计行错位显示问题解决
前端·javascript·vue.js
奶球不是球6 小时前
el-button按钮的loading状态设置
前端·javascript
李白同学6 小时前
【C语言】结构体内存对齐问题
c语言·开发语言