js 获取年、月、周、当前日期第几周、这月有那几周
查看当前日期是第几周:https://wannianli.tianqi.com/today/zhou/
//获取完整的日期 var date=new Date; var y = date.getFullYear() var m = date.getMonth() + 1 var temptime=""; temptime= new Date(y - 2, m, d) // 往前一年 temptime= new Date(y , m+4-1, d) //往后4个月
获取当前第几周 function theWeek() { var totalDays = 0; now = new Date(); years = now.getYear() if (years < 1000) years += 1900 var days = new Array(12); days[0] = 31; days[2] = 31; days[3] = 30; days[4] = 31; days[5] = 30; days[6] = 31; days[7] = 31; days[8] = 30; days[9] = 31; days[10] = 30; days[11] = 31; //判断是否为闰年,针对2月的天数进行计算 if (Math.round(now.getYear() / 4) == now.getYear() / 4) { days[1] = 29 } else { days[1] = 28 } if (now.getMonth() == 0) { totalDays = totalDays + now.getDate(); } else { var curMonth = now.getMonth(); for (var count = 1; count <= curMonth; count++) { totalDays = totalDays + days[count - 1]; } totalDays = totalDays + now.getDate(); } //得到第几周 var week = Math.round(totalDays / 7); return week; }
获取当月有那几周 function GetCustomWeekList(year, month) { var rtn_Weeks = []; // 获取当月属于当年的第几周 function getWeek(dt) { let d1 = new Date(dt); let d2 = new Date(dt); d2.setMonth(0); d2.setDate(1); let rq = d1 - d2; let days = Math.ceil(rq / (24 * 60 * 60 * 1000)); let num = Math.ceil(days / 7); return num; } //获取当前月有几周 function getMonthWeek(a, b, c) { var date = new Date(a, parseInt(b) - 1, c), w = date.getDay(), d = date.getDate(); return Math.ceil( (d + 6 - w) / 7 ); }; var last = new Date(year, month, 0);//获取当前月最后一天时间 var y = last.getYear(); var m = last.getMonth() + 1; var d = last.getDate(); var ss = getWeek(year + "-" + month + "-1") for (var i = 0; i < getMonthWeek(y, m, d); i++) { item = []; item.push(ss + i); rtn_Weeks.push(item); } return rtn_Weeks; }
分类:
JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?