📅  最后修改于: 2023-12-03 14:52:46.718000             🧑  作者: Mango
在JS中,我们可以使用Date对象来计算每月的第一个星期一。
function getFirstMonday(year, month) {
const firstDay = new Date(year, month, 1).getDay();
if (firstDay === 1) {
return 1;
} else if (firstDay === 0) {
return 2;
} else {
return 9 - firstDay;
}
}
const year = 2022; // 要计算的年份
const month = 1; // 要计算的月份,从0开始,0-11分别代表1-12月
const firstMonday = getFirstMonday(year, month); // 计算每月的第一个星期一
console.log(`${year}年${month + 1}月的第一个星期一是${firstMonday}日`);
以上代码可以输出结果:
2022年2月的第一个星期一是7日
我们先定义了一个getFirstMonday
函数,它接受两个参数year
和month
,返回该月的第一个星期一是几号。函数内部的逻辑如下:
new Date(year, month, 1)
来创建一个表示该月1号的日期对象。getDay()
方法,返回值为0-6,分别代表星期天到星期六。9 - firstDay
,即下一个星期一距离1号的天数。例如,如果该月1号为星期二,那么第一个星期一就是距离1号7天,即2月份的第一个星期一是7号。
接下来,我们定义了要计算的年份和月份,以及调用getFirstMonday
函数得到结果,并输出。需要注意的是,输出年份和月份时,要加1,因为JS中月份是从0开始的。
通过使用Date对象,我们可以很方便地计算每个月的第一个星期一。如果需要计算其他星期几,只需要稍作修改即可。