如何在HTML中动态生成当前及上一周期的年月信息
实现动态显示当前与上一周期年月的方法
你可以用原生JavaScript实现自动更新,核心是利用Date对象获取日期,再处理月份和年份的转换,具体操作如下:
1. 准备月份名称数组
JavaScript的getMonth()方法返回0-11的数字(0对应1月,11对应12月),先定义包含所有英文月份名称的数组做映射:
const monthNames = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ];
2. 编写日期计算与更新函数
写一个函数处理当前和上一周期的年月,重点处理跨年情况(比如1月的上一周期是去年12月):
function updateCycles() { const now = new Date(); // 处理当前周期 const currentMonth = monthNames[now.getMonth()]; const currentYear = now.getFullYear(); // 处理上一周期 let prevMonthIndex = now.getMonth() - 1; let prevYear = currentYear; if (prevMonthIndex < 0) { prevMonthIndex = 11; // 切换到12月 prevYear = currentYear - 1; } const prevMonth = monthNames[prevMonthIndex]; // 更新页面文本 document.getElementById('current-cycle').textContent = `Current Cycle: ${currentMonth} ${currentYear} [ WIP ]`; document.getElementById('previous-cycle').textContent = `Previous Cycle: ${prevMonth} ${prevYear} [ WIP ]`; }
3. 修改HTML结构
把原来的静态文本改成带ID的容器,方便JS定位更新:
<p id="current-cycle"></p> <p id="previous-cycle"></p>
4. 触发自动更新
让页面加载完成后自动执行函数:
window.onload = updateCycles;
把这些代码整合到你的HTML中,就能实现每次打开页面自动显示最新的周期年月了。
内容的提问来源于stack exchange,提问作者Evan
相关产品推荐
相关产品推荐

